javascript - 在 cypress 中的 firefox 或 edge 或 chrome 中执行多个规范时出错
问题描述
- 准确地说,当我在 firefox 或 edge 或 chrome 浏览器中运行多个规范文件时,不会发生执行。执行停止并出现以下错误
错误:在 TCP.onStreamRead (internal/stream_base_commons.js:201:27) 读取 ECONNRESET { errno: 'ECONNRESET',代码:'ECONNRESET',系统调用:'read' } 错误:在 TCP.onStreamRead (internal/stream_base_commons) 读取 ECONNRESET .js:201:27)
- 对于 Chrome,即使在 cypress.json 中使用 "chromWebSecurity": false,直到 7 - 8 个规格(数量不同),它也会在停止执行后运行并显示以下错误
连接 Chrome 失败,1 秒后重试(尝试 61/62)
连接 Chrome 失败,1 秒后重试(尝试 62/62)
Cypress 在重试 50 秒后未能连接到 Chrome DevTools 协议。
This usually indicates there was a problem opening the Chrome browser.
The CDP port requested was 62236.
Error details:
Error: could not find CRI target
at lazyAssLogic (C:\Users\manojkiran.yerrapotu\AppData\Local\Cypress\Cache\4.9.0\Cypress\resources\app\packages\server\node_modules\lazy
-ass\index.js:110:14)
at Object.lazyAss (C:\Users\manojkiran.yerrapotu\AppData\Local\Cypress\Cache\4.9.0\Cypress\resources\app\packages\server\node_modules\la
zy-ass\index.js:115:28)
at findStartPage (C:\Users\manojkiran.yerrapotu\AppData\Local\Cypress\Cache\4.9.0\Cypress\resources\app\packages\server\lib\browsers\pro
tocol.js:56:23)
使用的配置:
柏树:^4.9.0(最新)
操作系统:windows7
内存:16GB
解决方案
我找到了以下解决方案
解决 Chrome/Edge 问题:禁用 GPU(图形处理单元)
在 plugins/index.js 中添加此代码
on('before:browser:launch', (browser, launchOptions) => {
if ((browser.name === 'chrome' || browser.name === 'edge') && browser.isHeadless) {
launchOptions.args.push('--disable-gpu');
return launchOptions
}
});
在 cypress 4.11.0 firefox问题也解决了
推荐阅读
- python - 选择过期字段
- game-development - Godot 信号是否充当事件处理程序?
- go - 无法通过网络连接到 VoltDB
- python - 是否可以在 Snakemake 中有一个可选的输出文件?
- netsuite - 无法创建入库货件
- ionic-framework - Ionic 4:this.platform.is('desktop') 在 android 4.4.4 中安装 apk 时返回错误值
- python - 如何在同一行中获取字符串和两个整数作为输入
- c# - 在 c# 中使用 emgucv 旋转图像的像素错误
- angular - 如果使用掩码='+1 000 000',表格值不会以角度重置
- node.js - 如何将静态 YAML 文件与 React Native 应用程序捆绑在一起?