在 cypress.json 中有一个名为“retries”的选项,它定义了失败测试的重试次数。
我编写测试的方式,测试之间存在某种关系 (test1:创建条目并获取 id,test2:通过 id 获取条目并对其进行编辑,test3:通过 id 删除)大多数情况下,重试并不能帮助我避免不稳定,所有重试都会失败。
我可以使用 CI/CD 中的重试选项来重试所有规范。这太浪费了,而且不是很有帮助,因为我可能会在第二次重试时在其他一些测试中遇到片状错误。
所以理想情况下,我想在失败时重试整个规范,有没有办法做到这一点?
编辑:
阅读这篇文章重复选项似乎可以实现您正在寻找的东西。 尽管如此,据我了解,它将重复整个 cypress run 命令,而不是单个规格...我还没有找到任何解决方案来在失败时运行单个规格。
$ npm i -D cypress-repeat
$ npx cypress-repeat run -n 5 --until-passes --record ...
你不应该让你的测试依赖,看看cypress最佳实践,但如果你真的没有其他方法看重试指南,你可以使用
describe
上的重试:
describe('User bank accounts', {
retries: 2
}, () => {
...