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后,它现在可以正常工作(仍然发出警告,但测试正在运行(。
有一些解决方法可以摆脱 Yii 框架论坛上的警告。
其中之一涉及编辑 PHPUnit 核心文件Framework/TestSuite.php
以抑制警告:将@
放在 Dmitriy K 发布的method_exists($this->name, 'setUpBeforeClass')
前面。
另一个更便携,更合适。它是在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);
发布者 维塔莱茨
这些警告的显示取决于 php.ini 设置:
error_reporting
display errors
如果不想显示此警告,则必须设置
error_reporting(E_ALL & ~E_WARNING | E_STRICT)
或
ini_set('display_errors','off');
WebTestCase 中的指令.php
并且不要关闭错误日志记录到文件以保存&&检查错误
我在
尝试测试我的应用程序时遇到了同样的问题。
你应该下载并启动硒服务器http://selenium.googlecode.com/files/selenium-server-standalone-2.22.0.jar
警告将保留在那里,但测试将开始!