2011-07-06 24 views
12

私はいくつかのWebタスク(テスト用ではない)を自動化するためにSeleniumを使用したいと思います。私はSelenium RC Serverをインストールしていると思いますが、PHPでクライアントドライバが見つからないので、 "テストスクリプト"を書く方法がありません(http://seleniumhq.org/download/参照)。SeleniumをPHPで使用するには?

私はPHPでSeleniumを使用する方法はありますか?これはPHPUnit http://www.phpunit.de/manual/current/en/selenium.htmlが必要なことを示唆しているようです。私はちょうどいくつかのタスクを自動化し、テストの完全なスイートに関与しないことを望みます。

答えて

11

は、次のこと

  1. を試してみてください取得するためのセレンのphp-クライアント・ドライバのリンク上 http://mvnrepository.com/artifact/org.seleniumhq.selenium.client-drivers

    をクリックしますPHPUnitはインストールされ、

  2. 作業しますまた、あなたのPC上にJAVA sdk &があります。
  3. セレンIDEを使用してテストケースを記録します。
  4. テストケースをPHPファイルにエクスポートします。
  5. これらのエクスポートされた関数を使用すると、テストケースのライブラリが作成されます。
  6. ライブラリから関数/テストを呼び出すスイートを作成します。
  7. javaコマンドを使用してSelenium Serverを起動します。
  8. phpunitを使用するスイートを実行します。

refrenceのために書くためにどのようにこれらのファイルはhereをクリックしても、あなたはセレンサーバーを実行し、それと対話するためのウェブ・ドライバ・ライブラリを必要とするgitのハブ

+1

[php-webdriver](https://github.com/facebook/php-webdriver)ライブラリで十分です。[Steward](https://github.com)などのツールを使うと設定がさらに簡単になります/ lmc-eu/steward)。私は、Selenium IDEで時間を無駄にしないで、PHPの中に目的のシナリオを書くだけでよいと思います。 –

0

このリンクをご確認ください:バイナリ

+0

ためのアドオン。 PHPでそれを動作させるにはどうすればいいですか? – StackOverflowNewbie

+0

セレンにjarファイルをインストールしてください... –

+1

Marc - 私は通常Javaで動作しませんので、このJARバイナリで少し混乱します。このJARをSeleniumにインストールするにはどうすればよいですか?それでは、PHPからSeleneseスクリプトを実行するにはどうしたらいいですか? – StackOverflowNewbie

1

にしてみてください。

公式にはセレニウムはPHPをサポートしていませんが、NearsoftではJson Wire Protocolとやり取りするためのライブラリを作成しました。私たちは公式サイトの他の言語やドライバの例とできるだけ似通ったものにすることを目指していたので、Javaのページの例はPHPの構文と非常によく似ています。

それをチェックアウト:あなたがそれを好きならhttps://github.com/Nearsoft/PHP-SeleniumClient

、それを共有し、巻き込ま、それをフォークしたりなどしてくださいください。

よろしくお願いします。

12

facebook/php-webdriverは、セレンとPHPの素晴らしいクライアントです。

Web作業(OPが欲しい)を自動化するために、またはphp-webdriverをテストフレームワークに単純に統合することができます。すでにこれを提供するいくつかのプロジェクトがあります。

  • StewardPHPUnitに直接PHP-webdriverをを統合しています。
  • Codeceptionテストフレームワークは、php-webdriverの上にBDDレイヤーを提供します。
  • このblogpost + demo projectを確認して、カスタムPHPUnitのインテグレーションを説明することもできます。

すべて

  1. ダウンロードをインストールし、facebook/php-webdriverをインストールします。 composer require facebook/webdriver

  2. Download Selenium &開始してください。 java -jar selenium-server-standalone-#.jar

  3. Download Quick Javaをプロジェクトディレクトリに配置します。


使用

この例では、我々はjavascriptcookies以外のすべてを無効にする拡張機能quickjavaを使用しています。ここ

もっと見るプリファレンス設定:
https://github.com/ThatOneGuyDotNet/QuickJava/blob/master/defaults/preferences/defaults.js

もっと見る例はこちらコマンド:
https://github.com/facebook/php-webdriver/wiki/Example-command-reference

use Facebook\WebDriver\Firefox\FirefoxProfile; 
use Facebook\WebDriver\Firefox\FirefoxDriver; 
use Facebook\WebDriver\Remote\DesiredCapabilities; 
use Facebook\WebDriver\Remote\RemoteWebDriver; 

// Change this to the path of you xpi 
$extensionPath = $this->container->getParameter('kernel.root_dir').'/../bin/selenium/quickjava-2.0.6-fx.xpi'; 

// Build our firefox profile 
$profile = new FirefoxProfile(); 
$profile->addExtension($extensionPath); 
$profile->setPreference('thatoneguydotnet.QuickJava.curVersion', '2.0.6.1'); 
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Images', 2); 
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.AnimatedImage', 2); 
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.CSS', 2); 
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Cookies', 2); 
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Flash', 2); 
$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.Java', 2); 
//$profile->setPreference('thatoneguydotnet.QuickJava.startupStatus.JavaScript', 2); 
$profile->setPreference("thatoneguydotnet.QuickJava.startupStatus.Silverlight", 2); 

// Create DC + Driver 
$dc = DesiredCapabilities::firefox(); 
$dc->setCapability(FirefoxDriver::PROFILE, $profile); 

$driver = RemoteWebDriver::create($host, $dc); 
$driver->get('http://stackoverflow.com'); 

// Do stuff - https://github.com/facebook/php-webdriver/wiki/Example-command-reference 
//$driver->findElement(WebDriverBy::id("element-id")); 

// The HTML Source code 
$html = $driver->getPageSource(); 

// Firefox should be open and you can see no images or css was loaded 
0

私は男がファイルを生成し、主にどのようにIDEを使用するように頼まと思います。

PHP用のフォーマッタがあります。PHPunitとしてエクスポートするだけです。

セレンIDE:PHPフォーマッタ::それはJARファイルですFirefoxの https://addons.mozilla.org/en-US/firefox/addon/selenium-ide-php-formatters/

+0

Selenium IDE v2をサポートしていないと思います – icc97

関連する問題