【问题标题】:Moq: multiple tests through params, one test methodMoq:通过参数进行多次测试,一种测试方法
【发布时间】:2019-05-30 04:38:37
【问题描述】:

几年前,如果我没记错的话,是有一个测试方法并通过该方法获取参数,这些参数将使用 Moq 设置,每个参数的差异集都会创建一个新测试

我不记得它叫什么了,我一直在寻找它,但似乎找不到它 我想做的很简单

Moq("john", "mike", "sheila")
Moq("jake", "bleh", "donny")
....
[Test]
public void Test(param1, param2, param2)
{
  ...
}

【问题讨论】:

  • 您指的是参数化测试,我认为它与起订量没有直接关系。

标签: c# unit-testing moq


【解决方案1】:

您可以直接使用 NUnit 执行此操作,使用 TestCase 进行参数化测试:

[TestCase("john", "mike", "Sheila")]
[TestCase("jake", "bleh", "donny")]
public void Test(string param1, string param2, string param3)
{
//...
}

【讨论】:

    【解决方案2】:

    Moq 是 .NET 的模拟框架。

    此功能与起订量无关,它取决于单元测试工具。所以, 如果您使用的是xUnit,那么

    [Theory]
    [InlineData("john", "mike", "sheila")]
    [InlineData("jake", "bleh", "donny")]
    public void Test(string param1, string param2, string param3)
    {
    }
    

    如果您使用的是 MSTest,请添加包 MsTest.TestAdapterMsTest.TestFramework

    [DataTestMethod]
    [DataRow("john", "mike", "sheila")]
    [DataRow("jake", "bleh", "donny")]
    public void Test(string param1, string param2, string param3)
    {
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-01
      • 2013-02-10
      • 2023-03-20
      • 2021-10-15
      • 1970-01-01
      相关资源
      最近更新 更多