Skip to content

Instantly share code, notes, and snippets.

@qzaidi
Created June 26, 2012 03:12
Show Gist options
  • Save qzaidi/2993032 to your computer and use it in GitHub Desktop.
Save qzaidi/2993032 to your computer and use it in GitHub Desktop.
Phantomjs page load measurements
var page = require('webpage').create(),
system = require('system'),
address,time,tries,j;
if (system.args.length === 1) {
console.log('Usage: loadspeed.js <some URL>');
phantom.exit();
} else {
address = system.args[1];
tries = Number(system.args[2]) || 10;
j = tries;
time = 0;
(function repeat(lasttime) {
if (lasttime)
time += lasttime;
if (j--) {
loadpage(address,repeat);
} else {
console.log ('Average Load time is ' + time/tries);
phantom.exit();
}
}(0));
}
function loadpage(address,next) {
console.log('loading address ' + address);
var t = Date.now();
page.open(address, function (status) {
if (status !== 'success') {
console.log('FAIL to load the address');
} else {
t = Date.now() - t;
console.log('Page title is ' + page.evaluate(function () {
return document.title;
}));
console.log('Loading time ' + t + ' msec');
}
next(t);
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment