打开SiteTest失败:Firefox.php'在运行Yii功能测试时

时间:2012-05-17 09:35:06

标签: php selenium yii phpunit

Warning: include(): Failed opening 'SiteTest: Firefox.php' for inclusion 
... \yii\framework\YiiBase.php on line 418

Yii v1.1.10
PHPUnit v3.6.10
PHPUnit_Selenium v​​ 1.2.6

我试图在“使用Yii 1.1和PHP5进行敏捷Web开发”一书中运行示例时遇到此错误我觉得短语SiteTest:存在问题,它应该不存在。但是,我该如何解决这个问题?

更新(已解决):
显然,问题不在于上面显示的警告,但是在路上还有另一个错误。它说“curl_init()”未定义。我已经启用了php_curl扩展,但CLI中的PHP没有使用与apache相同的.ini文件。因此,在我在ini的CLI版本中启用php_curl后,它现在正常工作(仍然发出警告,但测试正在运行)。

3 个答案:

答案 0 :(得分:0)

有一些解决方法可以解决Yii Framework Forum上的警告。

其中一个涉及编辑PHPUnit核心文件Framework/TestSuite.php来压制警告:将@放在method_exists($this->name, 'setUpBeforeClass') posted by Dmitriy K.

前面

另一个更便携,更合适。它是在phpunit.xml中注释浏览器行:

    <selenium>
    <!--        <browser name="Internet Explorer" browser="*iexplore" />-->
    <!--        <browser name="Firefox" browser="*firefox" />-->
    </selenium>

并加入测试脚本:

    parent::setUp();
    $this->setBrowser('*iexplore');
    $this->setBrowserUrl(TEST_BASE_URL);

posted by Vitalets

答案 1 :(得分:0)

显示这些警告取决于php.ini设置:

error_reporting
display errors

如果您不想显示此警告,则必须设置

error_reporting(E_ALL & ~E_WARNING | E_STRICT)

ini_set('display_errors','off');
WebTestCase.php中的

指令

并且不要将错误记录关闭到文件以保存&amp;&amp;检查错误

答案 2 :(得分:-1)

我在尝试测试我的应用时遇到了同样的问题。

您应该下载并启动selenium服务器 http://selenium.googlecode.com/files/selenium-server-standalone-2.22.0.jar

警告将保留在那里,但测试将开始!