あははの瞬間がやってきた。これらの荒れ果てた混乱のフィールドをさまよっている次の貧しい魂のために投稿します.
Seleniumが「Selenium 2」と言うとき、彼らは「Selenium 2 = Selenium サーバー + WebDriver」と言うのが好きです。
PHPUnit 担当者にとっての秘訣は WebDriver の部分ですが、これはPHPUnit にはまったく含まれていません。Selenium は他のいくつかの言語で WebDriver を作成しています。また、PHPUnit をターゲットにしているのでまだ試していないサードパーティ製の PHP 用のものもあります。WebDriver は基本的に、DOM 内を走り回って要素を取得する方法です。http://docs.seleniumhq.org/docs/03_webdriver.jspに概要があります。
PHPUnitが「Selenium 2」と言うとき、彼らは WebDriver でほとんどのことを行うクラスを作成したことを意味しますが、それを WebDriver と呼んでいるのではなく、Selenium 2 と呼んでいます。
PHPUnit の自作バージョンのため、メソッドの名前は Java または C# バージョンとは少し異なります。Webdriver ドキュメントで必要なメソッドを見つけた後、探しているものを簡単に推測できるため、誰もがPHPUnit テスト ケースに興奮しています。
それ以外の場合、明らかに PHPUnit の他の機能のほとんどは元のSeleniumTestCase
ものに固執しています。情報を一元化するために、以下にいくつかのリンクをまとめました。Selenium 1 は「死んでいる」わけではありませんが、古いものです。PHPUnit はまだ Selenium 1 の実装から多くのアーキテクチャを使用しており、PHPUnit の Selenium 2 は実際にはそうではなく、一種の Selenium 1++ です。
したがって、ソースを探し回る必要はありません。PHPUnit のテスト ケースと WebDriver のドキュメントを一致させてみてください。また、 のチュートリアルのいくつかのメソッドは でSeleniumTestCase
名前が変更されていますが、心配する必要Selenium2TestCase
はありません。少し難読化されているだけで、同じように機能します。
「なぜ使用しないのSeleniumTestCase
ですか?」と尋ねるかもしれません。他のブラウザーのサポートには WebDriver が必要なようですので、Firefox から抜け出したい場合は WebDriver が必要になりますSelenium2TestCase
(私が間違っている可能性があります)。
これをこすり落としたときに見つけたいくつかの役立つリンクを次に示します。
$browser
上記の複数ブラウザに関する質問を解決するために、 の静的パターンを使用することは引き続き可能SeleniumTestCase
ですが、browser
インデックスは に変更されましたbrowserName
。
public static $browsers = array(
array(
'name' => 'Internet Explorer',
'browserName' => 'iexplore', // not 'browser'
'host' => 'localhost',
'port' => 4444,
'timeout' => 30000,
),
};
<selenium>
XML 構成を使用している場合、Phing はタグをサポートしないことに注意してください。