为什么rspec运行不同数量的测试?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么rspec运行不同数量的测试?相关的知识,希望对你有一定的参考价值。

我意识到这是一个非常广泛的问题,但我已经看到我们的测试运行800或1,500个单独测试并且两次都通过。什么可能导致rspec在不同的版本上运行不同数量的测试?

答案

我相信它是以随机顺序进行Rspec运行测试。浏览此处获取更多信息。

Rspec order option

例如,如果您想要查看相同的测试结果并仍想随机运行它们,您可以执行以下操作

当您使用--order random时,RSpec会打印出用于为随机数发生器种子的随机数。

--order rand:1234 - order default告诉RSpec加载组和示例,因为它们在每个文件中声明

bundle exec rspec --order rand ## for example this will results with a seed 1234

如果你想以相同的随机顺序运行相同数量的测试,你可以运行

bundle exec spec --order rand:1234 # This will always run the test in same random order with the given seed (1234)

以上是关于为什么rspec运行不同数量的测试?的主要内容,如果未能解决你的问题,请参考以下文章

Rspec 测试延迟作业

RSpec:如何获得`c.filter_run_excluding`排除的测试数量?

如何从 Rspec 输出禁用 http 日志?

我可以使用RSpec测试已部署的站点吗?

如何在 rspec 中运行单个测试?

为啥在测试 RSPEC 时 JBuilder 不返回 JSON 中的响应正文