我使用xUnit.net作为我的测试框架,但我想这个问题适用于其他框架。我的方法下面有两个布尔值。如何在不必写出每个组合的情况下测试所有组合?
[Theory,
InlineData(false, false),
InlineData(true, false),
InlineData(false, true),
InlineData(true, true)]
public void Foo(bool A, bool B )
有没有办法做类似的事情:
[Theory,
SomeAttribute( for(int i=0; i<5; i++), for(int y=0; y<5; y++)),
public void Foo(int A, int B )
将运行此测试5x5 = 25次?
答案 0 :(得分:0)
public static IEnumerable<object[]> FooData
{
get
{
for (int a = 0; a < 2; a++)
{
for (int b = 0; b < 2; b++)
{
yield return new object[] {a > 0, b > 0};
}
}
}
}
[Theory]
[PropertyData("FooData")]
public void Foo(bool A, bool B)