2011-01-12 22 views
1

これは私が様々な場所でネット上で見つけたものですが、実際の解決策はありません。テストを実行するためのデフォルトのコードがSelenium RC - クラスを再宣言できませんPHPUnit_Framework_TestCase

<?php 

set_include_path(get_include_path() . PATH_SEPARATOR . './PEAR/'); 
require_once 'Testing/Selenium.php'; 
require_once 'PHPUnit/Framework/TestCase.php'; 

class GoogleTest extends PHPUnit_Framework_TestCase 
{ 
    private $selenium; 

    public function setUp() 
    { 
     $this->selenium = new Testing_Selenium("*firefox", 
               "http://www.google.com"); 
     $this->selenium->start(); 
    } 

    public function tearDown() 
    { 
     $this->selenium->stop(); 
    } 

    public function testGoogle() 
    { 
     $this->selenium->open("/"); 
     $this->selenium->type("q", "hello world"); 
     $this->selenium->click("btnG"); 
     $this->selenium->waitForPageToLoad(10000); 
     $this->assertRegExp("/Google Search/", $this->selenium->getTitle()); 
    } 

} 
?> 

ですこれは私に次のエラー

Fatal error: Cannot redeclare class PHPUnit_Framework_TestCase in /usr/lib/php/PHPUnit/Framework/TestCase.php on line 115

私を与えるパスがこの

.:/usr/lib/php/ZendLatest/library/:/usr/lib/php/:./PEAR/

のように見えるが含ま誰も私が修正助けることができますこの?クラスが再宣言されている場所は明白ではありません。それは上記のファイルの115行目か他のどこかにありますか?

おかげ

答えて

1

私は

require_once 'PHPUnit/Framework/TestCase.php'; 

require_once 'PHPUnit/Framework.php'; 

Framework.phpファイルには、PHPUnitのためのブートストラップであり、これは他が含まれ、すべてを扱うを含む行を変更することでこれを解決してきました。 TestCase.phpを含めると、ブートストラップファイルではないため、正しくPHPUnitがロードされないため、動作しません。

関連する問題