レビューレビューのレビュー のの質の質質の質のの …...レビューレビューのレビュー のの質の質質の質のの向上の向上 ~幸せのレビュー目指して
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter...
-
Upload
hiroshi-toda -
Category
Software
-
view
2.682 -
download
0
Transcript of PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter...
![Page 1: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/1.jpg)
PHPerのための (不遇に負けない)Selenium入門 2015年10月19日 戸田広
![Page 2: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/2.jpg)
自己紹介
• 戸田 広(とだ ひろし) @hiroshitoda • 1979年生まれ 36歳 • ここ2年くらいは JavaとJavaScriptばかりでしたが、 最近またたまにPHPも書いてます。 • でも相変わらずPHPは5.2くらいで止まってます。 Composerっておいしいの?
![Page 3: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/3.jpg)
俺とCodeIgniter いろいろありました。
![Page 4: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/4.jpg)
俺とFuelPHP 特にありません。
![Page 5: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/5.jpg)
今日話すこと
※CodeIgniterの話はしません。 1. ブラウザ自動操作フレームワーク「Selenium」の紹介 2. Selenium IDEと不遇のPHP 3. Selenium WebDriverと不遇のPHP
![Page 6: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/6.jpg)
ブラウザ自動操作フレームワーク 「Selenium」の紹介
![Page 7: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/7.jpg)
ブラウザ自動操作フレームワーク「Selenium」の紹介
• Seleniumとは • Webブラウザーやスマートフォンアプリを リモート操作するライブラリー
• 旧バージョンと新バージョンが それぞれに使われていますが、 徐々に新バージョンに移行しています。
• Selenium RC • バージョン1 • GUIツール「Selenium IDE」はこちらがベースです。
• Selenium WebDriver • バージョン2 • W3Cで標準化されています。 http://www.w3.org/TR/webdriver/ • スマートフォン向けの拡張「Appium」があります。
![Page 8: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/8.jpg)
ブラウザ自動操作フレームワーク「Selenium」の紹介
• プログラムの単体テストではなく、 ユーザー操作テストの自動化をねらえるものです。 • 様々な言語向けの実装が作られていますので、 皆さんやりましょう!!!! • Java • Ruby • C# • Python • JavaScript • PHP • Perl • Objective-‐C
• しかしながら、言語によっては だいぶ不遇な感じなのです…
![Page 9: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/9.jpg)
Selenium IDEと 不遇のPHP
![Page 10: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/10.jpg)
Selenium IDEと不遇のPHP
• デモやります! • 操作記録・再生 • アサーション
• Selenium IDEは、Firefoxのプラグインです。
• コマンドは独自ですが、 一般的なプログラミング言語のフォーマッターで エクスポートできます。
![Page 11: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/11.jpg)
Selenium IDEと不遇のPHP
• _人人人人人人人人人人人人人人人人_> 不遇とは <> 才能を持ちながらも <> めぐりあわせが悪くて <> 世間に認められないことである < ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
![Page 12: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/12.jpg)
Selenium IDEと不遇のPHP
![Page 13: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/13.jpg)
Selenium IDEと不遇のPHP
• PHPフォーマッターの公式対応は ずいぶん前に滅亡しました!! 不遇!!!!
• Mozillaで配布されているプラグインは 旧バージョンのSelenium RC向けの エクスポートのみ対応です!! • https://addons.mozilla.org/ja/firefox/addon/selenium-‐ide-‐php-‐formatters/ • 今から使うものでは無いです。
![Page 14: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/14.jpg)
Selenium IDEと不遇のPHP
• Selenium WebDriver向けの エクスポートプラグインを作っている方がいます。 • https://github.com/suzuki/PHP-‐Formatter-‐PHPUnit_Selenium2
• やさしい世界
![Page 15: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/15.jpg)
Selenium WebDriverと 不遇のPHP
![Page 16: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/16.jpg)
Selenium WebDriverと不遇のPHP
• デモやります! • まずJavaを入れます • 次にJarファイルを入れます • これはPHPer向けの手順です • Selenium WebDriver を使うために、 PHPUnit_Extensions_Selenium2TestCase でコードを書いてみます。
![Page 17: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/17.jpg)
Selenium WebDriverと不遇のPHP
• _人人人人人人人人人人人人人人人人_> 不遇とは <> 才能を持ちながらも <> めぐりあわせが悪くて <> 世間に認められないことである < ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
![Page 18: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/18.jpg)
Selenium WebDriverと不遇のPHP
![Page 19: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/19.jpg)
Selenium WebDriverと不遇のPHP
• 「実装しているのはその一部だけです」 • (゚ε゚)キニシナイ!! • 必要な部分はちゃんと実装されてるっぽいです。 • ちゃんとチェックしてませんが…
• 他言語でも、必ずしもすべてのWebDriver APIに 対応しているわけではないです。 • ちゃんとチェックしてませんが…
• Selenium WebDriver向けのAPIドキュメントが無い!! • サンプルコードを見てね!の文化圏 • https://github.com/giorgiosironi/phpunit-‐selenium/blob/master/Tests/Selenium2TestCaseTest.php
• がんばるしかないのか?
![Page 20: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/20.jpg)
Selenium WebDriverと不遇のPHP
• PHP向けの実装は他にもあります! • Facebook謹製のphp-‐webdriver • https://github.com/facebook/php-‐webdriver • 他言語の実装とコードの書き方が近いので、 こちらの方がわかりやすいかも?
• ドキュメントが充実しています!
![Page 21: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/21.jpg)
Selenium WebDriverと不遇のPHP
• 不遇をざっくり乗り越えるために、 Seleniumのラッパーを活用するのも良いでしょう。
• CodeceptionのAcceptance Testは、 中身がSelenium WebDriverです。 • http://codeception.com/ • なんだか良い感じのテストコードになります。
![Page 22: PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9](https://reader034.fdocuments.net/reader034/viewer/2022050613/58a7790a1a28ab99238b71fd/html5/thumbnails/22.jpg)
ご静聴 ありがとうございました。