自动化测试必须快速反映实时项目状态。这个想法是:
- 在执行任何对存储库自动构建的提交之后(尽可能快地完成)。
- 如果构建成功自动测试开始。必须快。
这是我知道的最好的方法来确定你的更改是否会破坏任何东西。
起初,快速构建似乎很难,但我们设法将其保持在 100 秒左右。用于 105(!) 个项目的解决方案 (MSVS 2008 C#)。
测试似乎没有那么简单(我们使用 NUnit FW)。单元测试不是一个大问题。是集成测试杀死了我们。而不是它们更慢的事实(任何关于如何使它们更快的想法都非常感谢),而是必须设置的环境要慢得多(atm ~1000 秒)!
我们的集成测试使用需要重新部署的 web/win 服务(目前有 19 个)以反映最新的变化。这包括重新启动服务和大量 HDD R/W 活动。
任何人都可以分享如何组织/优化环境和工作流程以加快自动化测试阶段的经验。什么是“低级”瓶颈和解决方法。
欢迎 PS 书籍和广泛的文章,但更赞赏现实世界的工作解决方案。