gpt4 book ai didi

ruby-on-rails - 是否可以使用 Rspec 涵盖大型 rails 应用程序的所有方法?

转载 作者:数据小太阳 更新时间:2023-10-29 08:28:50 25 4
gpt4 key购买 nike

我有一个至少有 50-55 个模型的应用程序,每个模型平均有 15 种方法。

使用 rspec 和 rcov 覆盖所有方法(包括非常复杂的方法)是否可能并且有意义吗?

我也有以下疑问

Rspec 对 Controller 、助手和 View 也有用吗?还是 cucumber ,应该更有用吧?

rspec 会帮助我减少冗余吗?如果是,如何帮助我?

rspec 对不断变化的需求应用有用吗?

最佳答案

用测试覆盖所有方法当然是可能的,如果您之前先编写测试就可以覆盖更多方法,从长远来看,这通常会导致应用程序更精简。另一方面,拥有 100% 的测试覆盖率并不能确保您的应用程序代码质量更好或您的团队更有效率。它唯一可以确保的是你的应用程序有更少的缺陷,并且在重构的情况下你不会破坏任何东西,然后是反对用测试覆盖所有方法的论点:

您经常会重构和维护代码,这通常涉及添加新方法和删除其他方法。

我想说的是,对其他对象或 View 、 Controller 、助手等调用的所有公共(public)方法进行测试是件好事。并测试所有相关的 API 方法,但没有必要对每个方法都进行测试.

另一方面,它将更多地取决于您的应用程序本身,而不是关于它的抽象对话。

您必须问问自己这样做是否值得,它能增加什么值(value)等等,如果有意义,那就去做吧。无论你选择在纯 rspec 中做,还是使用 cucumber、shoulda、capybara 等

关于ruby-on-rails - 是否可以使用 Rspec 涵盖大型 rails 应用程序的所有方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8019545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com