在C#中实现XUnit的参数化测试可以通过使用XUnit的[InlineData]特性来实现。下面是一个简单的示例代码:
using Xunit;
public class CalculatorTests
{
[Theory]
[InlineData(2, 3, 5)]
[InlineData(5, 5, 10)]
[InlineData(10, 5, 15)]
public void AddTest(int a, int b, int expectedResult)
{
Calculator calculator = new Calculator();
int result = calculator.Add(a, b);
Assert.Equal(expectedResult, result);
}
}
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
在上面的示例中,我们创建了一个Calculator类和一个对应的测试类CalculatorTests。在CalculatorTests中,我们使用[Theory]特性和[InlineData]特性来定义多组测试数据,并在测试方法AddTest中使用这些数据进行测试。
当我们运行这些测试时,XUnit会分别用每组测试数据来运行测试方法,并将测试结果输出。这样就实现了参数化测试。