PHPUnitとselenium2でブラウザの自動テスト
Selenium ServerはOSを通してブラウザのタスクを自動実行するテストツールです。
ここではPHPによるSeleniumの使い方を解説しています。
インストール
1.seleniumのサイトからSelenium Serverをダウンロードします。
http://docs.seleniumhq.org/download/
2.下記のサイトからテストで使用するブラウザのDriverをダウンロードする
(今回はChromeを使用する)
https://sites.google.com/a/chromium.org/chromedriver/
3.上記2でダウンロードしたzipファイルの中身を1でダウンロードしたselenium-server-standalone-2.9.0.jarと同じフォルダに展開する
4.PHPUnitのpharファイルをダウンロードする
https://phar.phpunit.de/phpunit.phar
5.テスト用のクラス作成
(以下のクラスではwww.google.comにアクセスして、ページのタイトルが'Google'である場合は成功です)
<?php
class WebTest extends PHPUnit_Extensions_Selenium2TestCase
{
protected function setUp()
{
$this->setBrowser('chrome');
$this->setBrowserUrl('http://www.google.com');
}
public function testTitle()
{
$this->url('http://www.google.com');
$this->assertEquals('Google', $this->title());
}
}
?>
6.selenium2サーバーを起動する
(ダウンロードしたjarファイルのバージョンに読み替えてください)
selenium2を使用する際に上記3で展開したDriverにパスが通っている必要があるので、以下のようなBATファイルを作成してSelenium Serverを起動するとよいでしょう。
SET PATH=%PATH%;.\
java -jar .\selenium-server-standalone-2.45.0.jar
7.テストケースの実行
以下のようにして上記5で作成したWebTestクラスを実行します。
php phpunit.phar WebTest
なおPHPUnitに関しては以下のサイトを参照してください。
https://phpunit.de/manual/current/ja/installation.html