我有rails 12应用程序的12000行代码的黄瓜功能。 我正在运行所有功能,以获取应用程序代码的代码覆盖范围,如控制器,模型,帮助器,查看页面代码。 要运行所有功能,需要4个小时。 我仍然没有获得100%的代码覆盖率,我的问题是如何通过黄瓜功能获得100%的代码覆盖率,以及如何将所有功能的运行时间从4小时缩短到最短可行时间。黄瓜功能需要时间来运行
0
A
回答
2
我敢肯定有很多关于普遍加快黄瓜的网页,例如http://aaron-jensen.com/post/5019042852/speed-up-your-rspec-cucumber-run就是其中之一。
你可能需要看谱,因为什么使您的黄瓜慢可能是特定于您的代码,只有你可以看到这一点。
记住,集成测试的确有正在缓慢的声誉,因为他们正在测试的全栈(这就是点)。这就是为什么人们经常进行彻底的单元测试而不是彻底的集成测试,因为在集成层面测试所有东西实在太慢了。
关于获得更好的覆盖,如果您使用的是覆盖报告,告诉你有多少被覆盖,它会告诉你其中线不包括它的HTML报告,您可以定制测试了点。
但是,它实际上可能有一些事情你不能在用户界面测试,因为他们在那里的鲁棒性 - 你不要指望在实践中发生的事。也就是说,但你的处理只是在他们的行为是出于意外的原因,或者是由于未来的代码更改。在这些情况下,单元测试可能是涵盖这些代码行的唯一方法。
0
当然,运行该功能需要时间,因为它实际上模拟了用户交互。 可避免重新指定要使用
cucumber path/to/file.feature:33
这里33指定文件,您想运行特定情景的行数来运行确切的情况运行相同的场景。
+0
我不希望运行特定的功能,作为获取coverage.features文件夹中同时运行所有功能后生成的应用程序代码需要覆盖。 – Trupti
相关问题
- 1. 从功能内运行黄瓜功能?
- 2. 测试一个黄瓜功能需要几分钟时间?
- 3. 用于运行黄瓜功能的黄瓜JVM平行
- 4. 多次运行黄瓜功能
- 5. MissingSourceFile当我运行“黄瓜功能”
- 6. 停止运行黄瓜测试功能
- 7. 无法运行黄瓜功能
- 8. Junit Runner不运行黄瓜功能
- 9. 更改黄瓜运行时间选项
- 10. 运行黄瓜硒前需要运行Webrick吗?
- 11. 运行功能时不会自动加载黄瓜步骤
- 12. 运行单个功能时,黄瓜找不到步骤
- 13. 运行所有黄瓜功能时打印功能文件名称
- 14. 黄瓜水豚步功能
- 15. 黄瓜:功能的大小
- 16. 运行多个功能文件的红宝石黄瓜
- 17. 运行单个黄瓜功能不会加载步骤定义
- 18. 如何阻止TDDium自动运行脚本/黄瓜功能
- 19. 黄瓜功能将不会在Lion下运行
- 20. 如何在Ruby方法中处理运行黄瓜功能
- 21. Maven运行黄瓜特定功能文件或文件夹
- 22. 量角器没有运行黄瓜的功能文件
- 23. 重新运行多个失败的黄瓜功能
- 24. 在Mac上使用Netbeans运行黄瓜功能
- 25. 在铁路的黄瓜运行功能类型错误
- 26. 如何在Netbeans中运行黄瓜功能文件
- 27. Rails:带有Guard(+ spork和+ rspec)的黄瓜不能在更改时运行功能
- 28. 运行黄瓜表自动
- 29. NoMethodError运行黄瓜测试
- 30. 通过spork运行黄瓜
谢谢,马修很好的解释。 – Trupti
我们不能使用黄瓜功能获得100%的代码覆盖率吗?实际上,我的客户希望rcov报告中出现的所有代码行都是绿色的,这是指代码被功能覆盖,目前我获得70%的代码,如红色,即功能不涵盖该代码。那么,告诉我这是测试代码覆盖的正确方法吗? – Trupti
70%实际上是一个低代码覆盖率。你会发现得到的越多,获得剩余点的难度就越大,最后几个百分比往往是最难的。当我说可能会有线路不能在集成测试中覆盖时,这可能是一个例外情况,占一两个百分点。 –