2021年7月28日

【Selenium】PHPで、Microsoft Edge上でのテストを自動化をしてみよう!~事前準備編~


Content

こんにちは!今年の4月に中途入社しましたけんやと申します。

今回は、参考文献のあまり出ていない
Selenium WebDriver + PHP + Microsoft Windows 10】で、
Microsoft Edge (以下、Edge) 上でのテストを自動化してみます。

※※※注意※※※
Seleniumシリーズは、全3回に分けて投稿します。
その3回の中で今回の記事は、1回目、事前準備編です。
事前準備が済んでいるという方は、実行編、テスト自動化編をご覧になってください。


Seleniumって?


けんや

 

Seleniumとは、
『Webブラウザの操作を自動化するためのフレームワーク』です!
手作業でテストをすると、以下のようなことで悩みませんか?

 

  • ・手戻りが発生したとき、1からテストを行わないといけない
  • ・繰り返しテストを行っていると手順を間違える
  • ・テストの工数が肥大化する
  • ・そもそもテスト結果をスクショしている時間がもったいない

 


けんや

 

そんな悩みを解決してくれるのが、Seleniumです!
Seleniumには、今まで多くの種類がリリースされてきました。

 

Seleniumの種類
リリース 種類 利用可能ブラウザ 言語
2006年 Selenium Core ブラウザのセキュリティ設定によるが、基本的には各ブラウザに対応 JavaScript
2007年 Selenium RC Mozilla FirefoxやSafariなど PHP、Java、Ruby、Python、Perl、.NET Frameworkなど
2008年 Selenium IDE Mozilla Firefox、Google Chrome 各言語のスクリプト生成が可能
2011年 Selenium WebDriver 各ブラウザに対応 PHP、Java、Ruby、Node.js、Python、C#など
2014年 Selenium builder Mozilla Firefox 各言語のスクリプト生成が可能

 


けんや

 

今回利用するのは、Selenium WebDriverですが、
こうしてみると、他にも多くの種類がリリースされているんですね。

 

実行に必要なもの


けんや

 

以下の4つが必要です!
準備するものが少なくて簡単ですね。

 

# 必要ファイル 何のために必要か
1 selenium-server-standalone-×××.jar Javaで動くSeleniumを実行するため
2 msedgedriver.exe EdgeでSeleniumを起動するため
※Google Chrome等は別のドライバが必要となる
3 php-webdriver + Composer PHPでSeleniumを動かすため
4 DB、Java・PHPの実行環境

 

事前準備


けんや

 

では早速、事前準備を行っていきましょう。
※PHPやDBは予め環境構築済みと仮定します

 

  • 1. selenium-server-standalone-×××.jarをダウンロードします。
  •  ※コチラからDLすることが可能です。selenium-serverをDLしてくださいね。
  • 2. msedgedriver.exeをダウンロードします。
  •  ※今回Edgeを利用するため、msedgedriverを用意しています。DLはコチラ。
  • 3. コマンドプロンプトを開き、Webアプリのルートディレクトリへ移動します。
  • 4. composerのインストール
  •  次のコマンドを実行します。
  • curl -s https://getcomposer.org/installer | php
  • 5. php-webdriverのインストール
  •  次のコマンドを実行します。
  • php composer.phar require php-webdriver/webdriver
  • 6. Javaをインストールしていない場合、コチラからDLする。

 


けんや

 

とても簡単ですね!

 

まとめ

 

いかがだったでしょうか。

Seleniumと聞いて、身構えていた人は、
案外簡単だったと拍子抜けしたのではないでしょうか。

さて次は、実行編です。
またお会いしましょう。

 

2021年7月28日 【Selenium】PHPで、Microsoft Edge上でのテストを自動化をしてみよう!~事前準備編~

Category 開発ブログ(技術ブログ)

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら