首页 > 解决方案 > 如何解决在 firefox 上运行 testcafe test1.js 时浏​​览器断开连接错误:使用 SUSE 无头

问题描述

在新版本的 SUSE OS 上设置 testcafe。使用 firefox:headless 在 SUSE 上运行 testcafe 开始测试我停顿了很长时间,然后出现错误:

testcafe firefox:headless test1.js --reporter=xunit

“错误 Firefox 66.0.0 / Linux 0.0.0 浏览器已断开连接。当浏览器挂起或关闭时,或由于网络问题时,可能会出现此问题。”

测试咖啡馆版本:0.23.3

Linux 版本:NAME="SUSE" VERSION="12 SP4" uname -a = "4.12.14-94.41-default"

火狐版本:66.0.2

node.js 版本:v10.15.3

如果我不无头运行,Firefox 也可以正常工作,如果我将 DISPLAY 指向 ViewNow,它允许 X 窗口显示在我的 PC 上运行的浏览器,则测试成功执行而没有任何错误,但我需要无头为我们的自动化框架。

按照https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/上的说明,我还可以使用 firefox -screenshot http://www.microfocus.com
以无头模式运行浏览器模式以访问网页并捕获显示连接成功的 .png,因此无头 firefox 可以访问网页。

我有一个旧版本的 SUSE、testcafe、firefox,它可以无头运行并且可以工作,所以我知道这曾经可以工作:Test cafe version: testcafe -v 0.18.6

Linux 版本:NAME="SUSE" VERSION="12 SP2" uname -a = "4.4.21-69-default"

火狐版本:58.0.2

node.js 版本:v8.9.4

预期结果:在以下环境中运行测试:- Firefox 66.0.0 / Linux 0.0.0

开始 ✓ 我的第一个测试

1 次通过(1 秒)

标签: firefoxautomated-testse2e-testingsusetestcafe

解决方案


Testcafe 安装问题导致更新 testcafe 后调用较旧的 testcafe:安装在 /home1/{id}/testbin/node-v10.15.3-linux-x64/bin/testcafe 中的 Testcafe 是指向 ../lib/node_modules 的符号链接/testcafe/bin/testcafe-with-v8-flag-filter.js* 当 nmp install -g testcafe 运行时,此版本从未从 0.0.23 更新,而是更新为 /home1/{id}/testbin/node-v10 .15.3-linux-x64/lib/node_modules/testcafe/bin/testcafe.js 但从未获得执行权限:-rwxr-xr-x 1 * users 207 Oct 26 1985 testcafe-with-v8-flag-filter.js* -rw-r--r-- 1 * users 59 Oct 26 1985 testcafe.js* (不知道为什么他们的日期是 1985 年??)我向 testcafe.js 添加了执行权限,现在 testcafe -v 给出了 1.1.3 和无头正在工作。


推荐阅读