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

使用selenium web驱动程序在多个浏览器上运行测试,第1张

概述我试图通过for循环在多个浏览器上运行相同的测试,但它总是只在Firefox上运行. bros = ['FIREFOX','CHROME','INTERNET EXPLORER']for bro in bros: print "Running "+bro+"\n" browser = webdriver.Remote( command_e 我试图通过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")

一个有趣的观察;当我包含参数平台时: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.

祝好运!

总结

以上是内存溢出为你收集整理的使用selenium web驱动程序在多个浏览器上运行测试全部内容,希望文章能够帮你解决使用selenium web驱动程序在多个浏览器上运行测试所遇到的程序开发问题。

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

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1087701.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存