0

Selenium2TestCaseオブジェクトを使用して、サイトでいくつかのテストを実行しています。私はこれらのテストをモジュール化して、書きやすさと新しいテストと読みやすさを実現しようとしています。

Selenium WD と PHPUnit に関する知識が限られており、オンラインで入手できる有用な情報が明らかに不足しているため、テストを個別の「ページ」オブジェクトに分割することから始めました。これが最善の解決策なのか、それとも技術的に可能なのかはわかりません。

これは私が現時点で持っているものの単純化されたバージョンです...

class Selenium2TestCase_Extension extends PHPUnit_Extensions_Selenium2TestCase
{
    public function testPages(){

        $pages = array('about', 'contact');

        foreach($pages as $page){

            // Can I instantiate and run the tests in About_Test from here???
        }
    }
}

class About_Test extends PHPUnit_Extensions_Selenium2TestCase 
{
    public function testTitle(){
        $this->url('/about');

        $this->assertEquals("About Us", $this->title());
    }

}

class Home_Test extends PHPUnit_Extensions_Selenium2TestCase
{
    public function testTitle(){
        $this->url('/home');

        $this->assertEquals("Welcome", $this->title());
    }

}

ここで不可能なことを試みているのか、それとも何を試みているのかわからないので、助けていただければ幸いです!

4

1 に答える 1

0

はい、execまたはsystem、または同様のものを使用できます。しかし、それは適切な方法ではないようです。

XY問題ですか?

あなたは出来る

  1. 一部のテストを起動するためにグループを使用します。
  2. これらのテストを 1 つの別のフォルダーに保存し、コマンドライン インターフェイスを使用してテストを実行します。
  3. コマンドライン インターフェイスを使用して必要なテストのみを実行します。
  4. (あなたの場合)データプロバイダーを使用して、1つのテストのみを記述します。
于 2013-11-01T00:42:28.433 に答える