Webtech Walker

PhantomJS入れてみた

昨日shibuya.jsいって、PhantomJSが熱そうだったので入れてみました。PhantomJSはQtWebkitを使ってコマンドラインからGUIが存在しないブラウザを動かすもので、これを使えばJavaScriptのテストを手軽にコマンドラインから動かすことができます。実際にWebkitで動くのでCanvasでもAjaxでもなんでもいけるという優れもの。

インストール

インストールは以下にのってるのでこの通りにやってさくっと終了。とくにはまりどころなし。

http://code.google.com/p/phantomjs/wiki/BuildInstructions#MacOSX

テストしてみる

こういうファイルを用意して

test.html

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>test</title>
</head>
<body>
<div id="hoge">hogehoge</div>
</body>
</html>

test.js

if (phantom.state.length === 0) {
    phantom.state = 'checking';
    phantom.open('./test.html');
} else {
    var hoge = document.getElementById('hoge');
    console.log( hoge.innerHTML === 'hogehoge' );
    phantom.exit();
}

phantomjsで実行

$ phantomjs test.js
true

と出力されました。すごー。env.jsとか色々あるけどこれは実際にWebkitが動いてるのでDOMをエミュレートするライブラリよりは信頼できそうだしよさげかもですね。

このエントリーをはてなブックマークに追加