PHP   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Php webdriver – 如何强制新测试使用不同的配置文件?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用动态创建的Firefox配置文件在包含多个节点的SELEnium网格上运行多个测试,如下所示:
$firefoxProfile = new FirefoxProfile();
$capabilities = DesiredCapabilities::firefox ();
$capabilities->setCapability(FirefoxDriver::PROFILE,$firefoxProfilE);

$this->webdriver = RemoteWebDriver::create("http://my.tests.com",$capabilities,5000);

但是每次集线器选择具有先前运行的Firefox实例的节点时,它都使用相同的配置文件并丢弃先前运行的会话.这是因为应用程序使用相同的cookie进行身份验证.

有没有办法迫使SELEnium网格动态创建一个新的配置文件并获得一个全新的firefox实例?

一些进一步的信息

为了启动集线器,我目前使用以下命令行

java -jar /opt/SELEnium/SELEnium-server.jar -trustAllSSLCertificates -timeout  300 \
                                        -role hub -newSessionWaitTimeout 60 -maxSession 2 \
                                        -port 9444 -nodeTimeout 300 \
                                        -browserTimeout 300 &

为了让节点启动我使用

xvfb-run -n 99 --server-args="-screen 0 800x600x16 -ac"  \
      -a java -jar /opt/SELEnium/SELEnium-server.jar -role node \
                 -browser browserName=firefox,maxInstances=2 \
                 -hub http://my.tests.com:9444/grid/register

奇怪的是,当我设置一个独立的SELEnium服务器时,它会创建多个firefox实例,因为我希望…

解决方法

您还可以尝试使用名为 Selenoid的替代轻量级SELEnium替代品.主要区别在于它在新的 Docker容器中启动每个浏览器.这可以保证您的会话完全隔离.

大佬总结

以上是大佬教程为你收集整理的Php webdriver – 如何强制新测试使用不同的配置文件?全部内容,希望文章能够帮你解决Php webdriver – 如何强制新测试使用不同的配置文件?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。