我是单元测试/ TDD 的新手。我们正在开发一个具有以下架构的 Web 应用程序:
- MVC
- WCF 服务层
- 业务逻辑层
- DAL 与 EF
我以前没有做过单元测试,但在一些项目中看到过,所以我对此并不清楚。
我们应该为每一层的每个方法编写单元测试还是这些特定于某一层?
其次,我们是否应该放置一个项目并将所有层单元测试放入其中?我想知道如何管理测试项目中所有层的单元测试?
我是单元测试/ TDD 的新手。我们正在开发一个具有以下架构的 Web 应用程序:
我以前没有做过单元测试,但在一些项目中看到过,所以我对此并不清楚。
我们应该为每一层的每个方法编写单元测试还是这些特定于某一层?
其次,我们是否应该放置一个项目并将所有层单元测试放入其中?我想知道如何管理测试项目中所有层的单元测试?
我在一家全敏捷商店工作,我们做了以下工作:
1. 我们从编写 UAT(用户验收测试)开始。对你来说,这将通过 Cucumber + WatiN 或类似的东西来完成。它们在编写时考虑了业务功能。
2. 接下来我们为要添加的类编写单元测试。这意味着测试每个公共方法及其所有逻辑分支。这几乎适用于除视图之外的所有内容。
3. 对于毛茸茸的代码,我们添加了绑定多个类的集成级测试,以确保它们正确集成。
有些层没有经过测试,因为假设它们“正常工作”就在那里(即 DBMS)
通常你的 CI 应该首先运行单元测试,然后是集成测试(如果单元测试通过),最后是最慢的 UAT,只有在集成测试通过时