gpt4 book ai didi

browser - 使用 selenium web 驱动程序在多个浏览器上运行测试

转载 作者:行者123 更新时间:2023-12-02 21:25:33 25 4
gpt4 key购买 nike

我尝试通过 for 循环在多个浏览器上运行相同的测试,但它始终仅在 Firefox 上运行。

bros = ['FIREFOX','CHROME','INTERNET EXPLORER']

for bro in bros:
print "Running "+bro+"\n"
browser = webdriver.Remote(
command_executor='http://10.236.194.218:4444/wd/hub',
desired_capabilities={'browserName': bro,
'javascriptEnabled': True})
browser.implicitly_wait(60000)
browser.get("http://10.236.194.156")

一个有趣的观察;当我包含参数 platform: WINDOWS 时,它仅在 Internet Explorer 上运行。

Selenium Webdriver 是这样工作的还是我的理解是错误的?

最佳答案

我实际上已经在java中完成了这个,以下对我来说效果很好:

...
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
...

DesiredCapabilities[] browsers = {DesiredCapabilities.firefox(),DesiredCapabilities.chrome(),DesiredCapabilities.internetExplorer()};
for(DesiredCapabilities browser : browsers)
{
try{
System.out.println("Testing in Browser: "+browser.getBrowserName());
driver = new RemoteWebDriver(new URL("http://127.0.0.1:4444/wd/hub"), browser);
...

如果您用不同的语言编写测试,您当然需要对此进行调整,我知道这在 Java 中是可能的,否则不确定。

另外,我同意你想要做的事情,我认为最好有一个类在不同的浏览器上运行相同的测试,而不是多次重复代码并且变得不优雅。如果您在 Java/其他代码中执行此操作,我也强烈建议使用 Page Object .

祝你好运!

关于browser - 使用 selenium web 驱动程序在多个浏览器上运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9453327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com