我正在尝试使用Yii框架让Selenium Web Driver与php一起工作。
phpunit已安装并正常运行。
我运行了最新版本的selenium服务器。 (硒 - 服务器 - 独立-2.37.0.jar)
我有this Yii extension for web driver installed。
我有这个shell测试。
Yii::import('ext.webdriver-bindings.CWebDriverDbTestCase');
class SiteTest extends CWebDriverDbTestCase
{
public function testExample() {
$this->get("http://www.example.com");
$this->assertTrue($this->isTextPresent('Example Domain'));
$this->assertTrue(true);
}
}
当我使用
在命令行上运行它时phpunit functional/SiteTest.php
测试运行。将打开一个带有空配置文件的firefox窗口(安装了Web驱动程序插件。)但是网页无法加载。地址栏中没有任何内容。什么都没发生。浏览器保持打开状态,同时命令行打印以下内容。
PHPUnit 3.7.28 by Sebastian Bergmann.
Configuration read from C:\full\path\to\yii\project\protected\tests\phpunit.xml
F
Time: 4.88 seconds, Memory: 3.50Mb
There was 1 failure:
1) SiteTest::testExample
Failed asserting that false is true.
C:\full\path\to\yii\project\protected\tests\functional\SiteTest.php:18
FAILURES!
Tests: 1, Assertions: 1, Failures: 1.
我在Windows 7上并尝试关闭防火墙以查看是否是原因。
正如你所看到的,当第二次测试通过时,phpunit工作正常。但由于某种原因,firefox没有打开请求的页面。
编辑:我正在使用最新版本的php(5.5.5)
编辑:我现在也尝试使用Chrome驱动程序。我得到了相同的结果。 Chrome已打开,但页面未加载。地址栏中只有'data:,'。
答案 0 :(得分:0)
每当我使用最新的服务器启动脚本时,我都会遇到同样的问题。但是我注意到如果我使用selenium server v2.33,一切都会再次起作用(http://goo.gl/cxpyd2)。但是,我一直得到一个执行js错误,似乎发生在新的Firefox和2.33?我不确定。所以我认为它是用较新版本的服务器修复的,但我无法尝试。
答案 1 :(得分:0)
我遇到了同样的问题,但将firefox版本降级为11.0它开始工作。如果你使用linux,你可以使用synaptic并强制使用firefox版本降级