如何在 3 个不同浏览器中的同一台电脑上并行运行 selenium html 套件?

Posted

技术标签:

【中文标题】如何在 3 个不同浏览器中的同一台电脑上并行运行 selenium html 套件?【英文标题】:how to run selenium html suite parallely on same pc in 3 different browsers? 【发布时间】:2015-02-18 08:14:40 【问题描述】:

我通过更改端口号并行运行 CHROME、FF、IE,命令是:

java -jar D:\selenium\selenium-server-standalone-2.40.0.jar -htmlSuite "*googlechrome C:\chrome.exe" http://localhost/test/ D:\selenium\TS6.html C:\RES\Result_TS6.html -port 4448

and -port 4452 for FF
and -port 4456 for IE

CHROME 运行良好并在完成后关闭,但是

当 FF 完成其自动化 它正在关闭 IE 而不是 FF FF 一直在运行.... 任何人都可以提出为什么会这样吗?

【问题讨论】:

【参考方案1】:

可以使用不同的参数多次运行 selenium-server-standalone。但是,当您遇到意外行为时,可以得出结论,不支持这种用法,因为也找不到任何文档。要找到问题的根本原因,需要进行更多调试。

selenium-standalone-server 与 Grid 服务器捆绑在一起。 Grid 服务器的设计(完全符合您的要求)可以执行和管理多个测试。这允许您并行执行多个测试、管理浏览器配置并跟踪测试结果。

http://docs.seleniumhq.org 上有关于如何设置 Grid 服务器的指南。

目前尚不清楚并且极不可能直接使用 Grid 服务器运行 Selenium IDE HTML 套件-htmlSuite。没有关于此的文档。但是,可以将现有的 Selenium IDE HTML 套件导出到 WebDriver 兼容代码。

当然你总是可以选择在多个虚拟机上运行测试,这条路线也解决了不能运行多个实例的问题。

【讨论】:

你的意思是说集线器和节点的概念? 而且我发现这不是3个浏览器的问题,如果我只运行firefox和internet explorer,它会发生同样的情况。 正确,使用网格服务器(集线器/节点概念)同时并行执行测试。 但节点和集线器的概念仅用于使用命令行执行 java 测试用例,但如何执行 html 套件? 不可能,'-htmlSuite' 是 Selenium 1 的一部分,不能与 Selenium 2 的 Selenium Grid 一起使用。

以上是关于如何在 3 个不同浏览器中的同一台电脑上并行运行 selenium html 套件?的主要内容,如果未能解决你的问题,请参考以下文章

如何在同一台电脑(windows系统)上同时搭建python2和python3环境

.net 在同一时间内,同一台电脑上只允许一个账号登录使用,如何实现,

在同一 iOS 设备上使用 xcodebuild 运行并行测试

如何在同一台机器上的不同网络接口上添加相同的端口?

R中的并行化:如何在每个节点上“源”?

如何在同一台电脑上调试TCP连接?