phpとtravis ciでブラウザテスト
TRANSCRIPT
#phpstudy 2014/1/28 @yando
PHPとTravis CIでブラウザテスト
♥
yando
CandyCane / php CakePHP2 実践入門
ピザ♥(昨年は約100枚)
CM: PaaSセミナー
今日の話題
Selenium
Vagrant + Selenium
Travis CI + Selenium
ブラウザによる自動テスト
IEを含む主要ブラウザに対応
Selenium IDEが有名 (簡単だし)
Selenium-WebDriver / Selenium RC
Selenium
Selenium IDE
IDEの問題
IDEはテスト結果の取得がいまいち
結果がHTML
文字列的に中身を見て成否が分かる
yandod/travis-ci-selenium-php
これは厳しい
RC / WebDriver
PHPUnitなどからコントロール
Selenium RC = Selenium 1
Selenium Web Driver = Selenium 2
互換性はあるけど今ならWebDriver
コード例(PHPUnit)
実行例(PHPUnit)
これで
PHPUnitだからCIに乗せやすい
ただし実行環境にいろいろ必要
PHP, Webサーバ、java、ブラウザ
セットアップが面倒←ここまでが去年
Vagrant + Selenium
去年、あっという間に標準に
開発環境設定を自動化
ここにSeleniumを突っ込もう!
Vagrant
残念なレシピ
Oh…
無いから書く
XVfb - 仮想デスクトップ
firefox (phantomjsはやっぱ中途半端)
java + Selenium
レシピを書いた
yandod/selenium-grid
使い方
Berksfile からインポート
yandod/candycane を見てください
Travis CI+ Selenium
Webで提供されるCI
CI環境にはfirefoxなどが導入済み
実は .travis.yml に設定を書くだけ!
使わないともったいない!
Travis CI
インストーラーの自動テスト
基本的なフローや会員登録もやりたい
重要な部分だけでもカバー
Sauce LabならIEもテストできる
達成
iOS / Androidなども対応されている
何度も繰り返す手作業を自動化!
ローカル環境もVagrantで手に入る!
Engine Yardを使おう!(宣伝)
未来
ebook配布中!
URLはステッカーに!!