javascript - 赛普拉斯 - cy.visit() 尝试加载失败
问题描述
问题
我正在为 Cypress 运行集成测试,该测试在本地运行良好,但在 Gitlab 中运行时失败。我收到的错误是在使用cy.visit()
导致以下错误的命令时:
CypressError: `cy.visit()` failed trying to load:
http://localhost:3000/ The response we received from your web server
was:
404: Not Found
配置
我使用以下命令启动测试:
tests:
image: cypress/base:10
stage: tests
script:
- npm ci
- npm run test:ci
我的命令如下所示package.json
:
"scripts": {
"start:ci": "serve dist --no-clipboard --listen ${PORT:-3000}",
"test": "cross-env NODE_ENV=test && npm run test:jest && npm
run test:cypress",
"test:ci": "start-server-and-test start:ci http://localhost:3000 test",
"test:cypress": "cypress run --headless",
"test:jest": "jest",
},
研究
我调查了这个错误,发现这个线程帮助我稍微理解了这个问题。然后我尝试将以下配置添加到我的cypress.json
文件中:
{
"baseUrl": "http://localhost:3000"
}
但我仍然得到同样的错误。为什么会这样?
解决方案
在 url 的末尾添加一个斜线,或者如果您可以在发出请求时删除斜线。
推荐阅读
- sqlite - SQLite 从另一个表中选择并计数
- mongodb - 是否适合使用 mongoose 在 mongodb Array 中保存每次登录的时间戳?
- python - 使用 tf.data.Dataset() 对映射进行矢量化时出错
- python - 我的 Python 代码关于这个算法有什么问题?
- sql - 每次在 PL/SQL 中执行存储过程时都可以提示吗?
- bash - 在 watch 调用中使用多个 tee 命令重定向
- php - 注意:未定义的偏移量:第 40 行 C:\xampp\htdocs\WebTech Mid Project\registration.php 中的 2
- python - 无法从列表中删除特定元素 [Python]
- java - 使用 Process Builder 执行命令时获得权限被拒绝
- swift - 如何在 RealityKit 中实现广告牌?