测试与代码优化的实用指南
1. 测试驱动开发的实践要点
在进行大量测试覆盖工作时,尤其是客户期望开始新功能开发时,测试驱动开发(TDD)是一个很好的选择。关键在于,每次修复 bug 都要先编写一个失败的测试,无论是单元测试、功能测试还是集成测试。这样可以逐步增加项目的测试覆盖度,同时降低错过截止日期的风险,也减少破坏现有功能的可能性。
同样,添加新功能也应采用 TDD 流程。一开始可能需要更多地使用模拟对象,但随着时间推移,代码库和测试覆盖度都会得到改善。
另外,要避免一次性清理整个代码库的冲动。如果有这种想法,要么等这种冲动过去,要么等到临近截止日期,修复所有问题已不可行时再做决定。
最后,尽可能一次只做一件事。在添加新功能时,不要扩展测试覆盖度;在扩展测试覆盖度时,也不要尝试清理代码(偶尔不可避免,但要尽量减少)。这样在出现问题时,更容易找出问题所在。
2. 遗留代码测试技巧
对于遗留的 Rails 项目,可以使用集成测试来创建测试覆盖度,而不必关心遗留代码的结构。还可以使用单元测试来理解代码的工作原理。此外,还可以探索将代码注入系统的技术,在测试期间改变其行为,以便将测试重点放在特定的代码片段上。
3. 测试工具与技术
- Capybara :用于端到端测试和集成测试,可模拟用户交互,支持多种浏览器,如 Chrome。安装步骤如下:
- 在 Gemfile 中添加
gem 'capybara'。 - 运行
bundle in
- 在 Gemfile 中添加
超级会员免费看
订阅专栏 解锁全文
12万+

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



