【发布时间】:2014-01-20 20:56:08
【问题描述】:
我读了一些文章,他们说implicitWait() 在全球范围内有效。但我不确定 我应该在哪里设置它。
这是我的代码:
public function setUp(){
$this->setHost('10.10.60.95');
$this->setPort(4444);
$this->setBrowser('firefox');
$this->setBrowserUrl('http://www.ABC.com');
$this->prepareSession();
}
public function testTitle()
{
$this->url('http://www.ABC.com/');
$this->assertEquals('ABC', $this->title());
}
我应该在哪里添加implicitWait() ? setUp 函数还是 testTitle 函数?
$this->timeouts()->implicitWait(10000);
谢谢!
回答:
正如@Arran 所说,实际上我应该在大多数情况下将此代码放在 setUp() 函数中,因为它可以在全球范围内工作。
public function setUp(){
$this->setHost('10.10.60.95');
$this->setPort(4444);
$this->setBrowser('firefox');
$this->setBrowserUrl('http://www.ABC.com');
$this->prepareSession();
$this->timeouts()->implicitWait(10000);
}
如果你想为一个测试函数设置一个特殊的超时时间,你可以在里面添加这个代码。
public function testTitle()
{
$this->url('http://www.ABC.com/');
$this->timeouts()->implicitWait(5000);
$this->assertEquals('ABC', $this->title());
}
【问题讨论】:
-
严格来说应该在setup函数中,除非你打算不断改变它的值。
-
谢谢@Arran,我会写更多的脚本来测试这个
标签: selenium selenium-webdriver phpunit