読了: 約 2 分

はじめてCasper.jsを使って認証のあるサイトのページスピードを測ってみようと思ったので
それを試したときのメモ書きです。

はじめてのCasper.js

良く聞いていましたが使わなかったので、速度改善などで使用。
Casper moduleの使い方がざっと載っているのでこの辺りとかこの辺り見て認証する所を作る。

正直clickしてform入力して認証までがこんな簡単に出来ていいのかって位。
他にも色々なメソッドがあるので時間がある時に遊んでみたいですねー

casper.start('http://xxx.jp',function(){
  this.echo('Start script!', 'GREEN_BAR');
  //表示したページのbutton selectorをclick
  casper.thenClick('button selector');
});

casper.then(function() {
  //formにid,passを入力
  casper.fill('form', {
  'Id': 'user',
  'password': 'pass'
  }, true);
});

//第一引数にURL,harファイルに書き出すメソッドを第二引数に
casper.each(targets, createHar);

casper.run(function() {
  //formに入力された後のページのtitleをget
  this.echo(this.getTitle());
  //そのページのbodyを指定してキャプチャ
  this.captureSelector('capture.png','body');
  //終わったらEnd Scriptを表示
  this.echo('End Script','GREEN_BAR').exit();
});

計測用のコードを作成

phantomjsのpackageにあるnetsniff.jsを使用。

onloadで計測出来る。
自分は3G回線の時のを計測したいので平行してCharlesを起動してコマンドで計測

casperjs xxx.js

参考:
CasperJSを使ってHARファイルを作る