如何在ASP中正确地进行单元测试..NET MVC多层应用

本文关键字:NET 单元测试 MVC 应用 ASP 正确地 | 更新日期: 2023-09-27 18:05:33

我在小型ASP中使用过单元测试。. NET MVC项目的整体架构。在这种情况下,我只有两个项目,如SampleApplicationNameSampleApplicationName. tests

现在我在一个由3名开发人员组成的团队中工作,从事一个非常好的n层架构的大项目。我们有5个项目在解决:

1。数据(POCO), 2。2 .数据访问(EF);普通(这里有帮手),4。业务,5。用户界面(ASP。净MVC5) .

这里有一个问题。我应该如何管理测试?是否应该对每个存在的项目(如Business)进行单独的测试项目?测试,DataAccess。测试,还是只测试最终结果?我的意思是每个方法从UI -> BLL -> DAL运行完整路径,所以我应该单独测试每个项目还是只有一个测试项目?

如何在ASP中正确地进行单元测试..NET MVC多层应用

通常你会以

结尾
  • 为每个项目提供一个独立的单元测试项目,其中包含逻辑你只是在一个项目中保留poco,它可能不值得专门的UT项目)是可测试的(您可能想要跳过DataAccess层)
  • 几个集成测试项目(UI &数据访问层在这里可能是不错的选择,尽管您可能以不同的方式(按场景)构建您的IT项目-甚至在一个地方全部放在一起)

我的意思是每个方法从UI -> BLL -> DAL运行全路径,所以我应该分别测试每个项目还是只测试一个项目?

所以在这种情况下,您可能会针对它们中的每一个单独的UT项目(尽管,再次,这可能是棘手的EF),以及一个实际上贯穿整个工作流的单个IT项目。

根据我的经验,您应该对每个层分别进行彻底的单元测试(或对数据层进行集成)。这是第一步,但一旦你做到了这一点,对你的实际产品功能进行一些端到端测试是一个好主意。