[英]How to use two browsers in selenium with phpunit
我需要同时使用两个浏览器窗口进行测试。 我正在将phpunit与硒一起使用。
例:
我无法从browser1导航到步骤3中的URL,因为那样将无法正常工作。
现在,我无法打开browser2,我所做的每一次尝试都将使用browser1。
有任何想法吗? 谢谢。
我已经做到了 基本上,您需要第二个驱动程序对象,并在该对象上使用open()。 因此,现在您有两个驱动程序对象-一个用于浏览器1,一个用于浏览器2。您将必须记住哪个驱动程序对象。 因为如果要在浏览器2中触发操作,则需要在第二个驱动程序对象上调用所需的函数,而不是默认值。
这不是很直观,因为大多数Selenium API几乎都是开箱即用的,无需真正询问即可为您提供单例驱动程序对象。
谢谢基思·泰勒。 我玩了一点代码,终于可以做到了。
我将代码放在这里,因为它可能对某人有用。
首先是创建一个扩展PHPUnit_Extensions_Selenium2TestCase的类:
class Browser extends PHPUnit_Extensions_Selenium2TestCase
{
public function __construct(){
parent::__construct();
$this->setHost("127.0.0.1");
$this->setPort(4444);
$this->setBrowser("firefox");
$this->setBrowserUrl("url");
$this->prepareSession(); // this does the trick
}
}
然后,您可以像这样使用它:
$this->url("url1"); // $this will be the default browser
$browser2 = new Browser(); // $browser2 is the new browser and has all the functions from phpunit and selenium available
$browser2->url("url2");
希望可以节省时间。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.