如何使用 CodeceptJS 在 GitLab CI 中实现自动测试阶段?
Posted
技术标签:
【中文标题】如何使用 CodeceptJS 在 GitLab CI 中实现自动测试阶段?【英文标题】:How to implement the autotesting stage in GitLab CI using CodeceptJS? 【发布时间】:2021-11-19 02:57:56 【问题描述】:我正在尝试根据示例在 GitLab CI 管道中配置自动测试的启动阶段:
CodeceptJS GitLab Integration
重现步骤:
-
我克隆了这个存储库https://gitlab.com/paulvincent/codeceptjs-e2e-testing
git@gitlab.com:paulvincent/codeceptjs-e2e-testing.git
-
添加更改并推送
因此,作业提交错误
如果有人设置了 CodeceptJS + Gitlab CI,请分享配置 .gitlab-ci.yml
【问题讨论】:
在第 77 行的第二个屏幕截图中,您显示了 1 个失败的测试。这似乎表明您的测试运行成功,但编写的一个 e2e 测试因错误而失败。上面的错误消息 (mceu_3 was not found
) 似乎表明缺少元素(或错误的 ID 选择器,因为它以 #
为前缀)。您确定这是 CI 问题,而不是您的测试问题吗?
@Patrick 非常感谢!你说的很对。我注释掉了问题区域,提交了修改,测试成功了
完美,我会继续留下这个答案,这样你就可以接受它来结束问题:)
【参考方案1】:
看起来您在使用 GitLab 时没有遇到问题,就像您的测试失败一样。在图像的第 77 行,它显示了基于未找到 mceu_3
id 的测试失败。解决该测试后,您的工作应该会成功完成。
请注意,如果您想将测试结果(例如 junit 结果)添加到合并请求中,您需要在工件上为作业设置 when:always
,以便即使作业失败,它也会收集报告!
【讨论】:
以上是关于如何使用 CodeceptJS 在 GitLab CI 中实现自动测试阶段?的主要内容,如果未能解决你的问题,请参考以下文章
如何配置 CodeceptJs 与 appium 一起在移动设备上进行网站测试
使用 WebDriver 在 codeceptJS 中按类获取元素