我正在尝试通过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
。
祝好运!
我试图在浏览器堆栈上运行多个浏览器上的E2E测试,我参考了在量角器中的多个/并行浏览器上的E2E测试?和Internet Explorer Selenium量角器e2e测试 但每次我试着运行测试时都会犯错- 谁能告诉我什么是我做错了这里,而且我们使用gulp ti运行规范,但我的问题是它是说,甚至没有超出认证。
我正在探索硒网格,用于在多个浏览器上执行测试。我已经按照在线教程配置了集线器和节点。我已经创建了一个测试脚本。 这是测试脚本的代码: 我的目标是在多个浏览器上运行此测试,我已经添加了所需的功能,如火狐, 感谢任何帮助
我正在使用GEB/Spock进行自动化测试。我正在使用Gradle作为我的构建工具。 我想调用不同的gradle任务来构建和运行一个特定的规范(测试)或一套规范。 显然,已经有了现有的构建指令,因为我可以调用,而且所有的规范都在Chrome上运行,我只是不知道如何添加更多的任务
问题内容: 我有一种创建2个远程Web驱动程序的方法。一个带有chrome,另一个带有Firefox: Driver.cs 然后我有一个Test类: } 问题是当Driver.Intialize被调用时,它无法同时运行chrome和firefox。我要发生的是,调用Init方法时,它将启动两个浏览器并在每个浏览器中运行测试方法。 问题答案: 我目前使用NUnit的方式。我遇到了同样的问题,找不到使
问题内容: 因此,我已经开始创建一些使用Selenium RC来直接在浏览器中测试我的Web应用程序的Ruby单元测试。我正在将Selenum- Client 用于红宝石。我已经为所有其他selenium测试创建了基类。 这将创建许多SeleniumDriver实例,并且在每个实例上调用所有缺少的方法。这实际上是并行运行测试。 别人如何做到这一点? 这是我的实现: 这可以工作,但是如果一个浏览器失
问题内容: 我正在将Selenium WebDriver与Java和TestNG框架一起使用。我想一次在一个代码中使用Firefox,IE,Chrome来进行跨浏览器测试。我只能将Firefox初始化为 但无法以相同方式初始化其他浏览器。例如: 给出错误 给出错误 如何初始化IE和Chrome并在所有所需的浏览器中执行测试? 问题答案: 对于C# 加 创建一个包含浏览器名称的配置文件。实现与配置文