绕过 Rails 编写更快的测试
在软件开发中,测试是确保代码质量和稳定性的关键环节。然而,随着项目的不断发展,测试速度可能会成为一个瓶颈。本文将探讨如何绕过 Rails 框架来编写更快的测试,提高开发效率。
1. 测试工具与测试类型
在使用 Guard 和相关自动测试工具时,它们对于聚焦的单元测试很有用,但对于集成测试则不太适用。因为要让特定文件知道它们可能参与哪些集成测试,而又不针对每次文件更改重新运行整个集成测试套件,这是比较棘手的。不过,如果你愿意花点精力调整 Guardfile,那么你就无需做其他事情,测试就会继续运行。
测试通常可以分为以下五类:
1. 端到端测试 :需要整个 Rails 栈,因为要测试整个系统。
2. 仅使用 ActiveRecord 并需要数据库的测试 :包括 ActiveRecord 查找方法的测试和保存到数据库的动作对象测试。
3. 需要 ActionPack 的请求测试 :可能需要也可能不需要 ActiveRecord,也可能会也可能不会触及数据库,这取决于如何进行存根处理。
4. 使用 ActiveRecord 对象但不触及数据库的测试 。
5. 完全不使用 Rails 特定类的测试 。
一般来说,第一类测试最慢,每往下一类,测试速度应该更快。目前,最后一类测试较少。
2. 测试速度的重要性
测试速度至关重要,因为开发者会频繁运行测试。如果你
绕过Rails提升测试速度
超级会员免费看
订阅专栏 解锁全文
3086

被折叠的 条评论
为什么被折叠?



