【问题标题】:Automated Unit test using Xunit for .net core 2.2 web API使用 Xunit 进行 .net core 2.2 web API 的自动化单元测试
【发布时间】:2019-09-26 21:43:20
【问题描述】:

我有一个在 .net core 2.2 中构建的 Web API 应用程序,我必须使用 Xunit 为这个应用程序编写自动化测试。应用涉及到两层Wep API => Service layer => Repository layer的依赖注入。

您能否建议编写这些涉及模拟数据库上下文的测试的理想方法?

【问题讨论】:

    标签: asp.net-core-webapi xunit.net


    【解决方案1】:

    单元测试应该只模拟 立即 级别的依赖关系。例如,如果您正在测试一个控制器,您将模拟该服务。如果您正在测试服务,您将模拟存储库,如果您正在测试存储库,您将模拟上下文(或者如果使用 EF Core,则只使用内存数据库)。

    换句话说,您不会建立模拟层。模拟应该完全抽象功能。对于控制器示例,您将模拟服务以仅返回一些固定值。服务模拟实际上不会使用任何存储库。

    【讨论】:

    • 谢谢你,克里斯!为了涵盖所有内容,我们必须模拟后续层(无论是服务还是存储库)并为其他层编写测试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 2021-12-03
    相关资源
    最近更新 更多