TestCafe - 如何使用远程浏览器运行并行测试?

问题描述

我有使用 testcafe Studio (.testcafe) 格式编写的测试。我想同时为管道执行我的测试,我将 ** -c 2 ** 与 node.js 一起使用

"test": "NODE_TLS_REJECT_UNAUTHORIZED=0 testcafe -c 2 chrome --skip-js-errors --assertion-timeout 20000 --selector-timeout 20000 Tests/**/*.testcafe",

这将打开 2 个 chrome 浏览器实例并并行执行我的测试。这正是我想要的。

但是当我在远程浏览器上执行测试时,我不确定我需要如何配置并发性以便并行运行我的测试。

我在下面尝试使用 node.js (-c 2 remote:2),我希望我可以在远程浏览器中并行执行我的测试

"test-ie": "NODE_TLS_REJECT_UNAUTHORIZED=0 testcafe -c 2 remote:2 --skip-js-errors --assertion-timeout 60000 --selector-timeout 60000 Tests/**/*.testcafe",

但是当我执行这个时,我只有一个连接 URL,它没有开始测试。 (但连接详细信息包括正在连接 2 个远程浏览器...

`> NODE_TLS_REJECT_UNAUTHORIZED=0 testcafe -c 2 remote:2 --skip-js-errors --assertion-timeout 60000 --selector-timeout 60000 Tests/**/*.testcafe

Connecting 2 remote browser(s)...
Navigate to the following URL from each remote browser.
Connect URL: http://192.168.1.1:64828/browser/connect
CONNECTED Chrome 89.0.4389.90 / macOS 10.15.7`

如何将其配置为在远程浏览器中并行运行测试?

谢谢

解决方法

您的命令语法是正确的。 TestCafe 输出一个 URL 来连接所有远程实例。在第一个浏览器窗口中打开此 URL(并看到第一个 CONNECTED 消息)后,打开第二个浏览器窗口并导航到相同的 URL。控制台将显示第二条 CONNECTED 消息并开始测试。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...