【问题标题】:How to mock objects in C# using Visual Studio Unit Testing framework or NUnit framework?如何使用 Visual Studio 单元测试框架或 NUnit 框架在 C# 中模拟对象?
【发布时间】:2020-03-19 17:37:24
【问题描述】:

我已经从 Java 转向使用 C# 开发应用程序。我遇到了 Visual Studio 提供的 Visual Studio 单元测试框架,以及另一个名为 NUnit 的框架。

  1. 哪些框架支持模拟对象,或者类似于将特定响应返回到另一个项目中源代码不可用的方法?

我使用的是 Visual Studio Pro,因此 Microsoft Fakes 不适用于我。另外,我遇​​到了起订量和犀牛,但我不确定这些。

  1. 我想知道是否可以使用 Visual Studio 或 NUnit 提供的单元测试框架,而无需添加额外的依赖项。

【问题讨论】:

  • 请注意,标题与问题并不完全匹配,并且在这里询问软件建议是题外话。
  • "...嘲笑...谁的source code 不可用..." - 你不需要需要 AUT 的源代码来测试它。
  • @SamiKuhmonen 我更改了标题和正文。感谢您指出。

标签: c# visual-studio unit-testing mocking nunit


【解决方案1】:

有三种流行的单元测试框架用于支持单元测试(Microsft Microsoft.VisualStudio.TestToolsNUnitxUnit),它们都不支持模拟。

根据我的经验,moq 对于大多数项目都非常有效。有关如何在实践中使用它的示例,请查看此项目DjvuNet。在那里,您将找到多个简单和复杂模拟场景的示例。这个特定项目使用 xUnit 作为单元测试框架,但它对模拟的完成方式没有任何影响。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    相关资源
    最近更新 更多