xUnit 中是否有预期的结果属性?
Is there an expected result attribute in xUnit?
我开始使用 xUnit
,但我有一个问题。
假设我正在测试一个接收 int
和 returns true
的函数,如果参数大于 10.
我知道我可以这样做:
[Theory]
[InlineData(7)]
[InlineData(13)]
[InlineData(4)]
public void MyTest(int num)
{
bool res = MyCompMethod(num);
Assert.True(res);
}
但它似乎还不够好,因为它会显示一些测试失败了,尽管它们没有。我也想输入预期结果,这样我就可以比较这些值,例如:
[Theory]
[InlineData(7), false]
[InlineData(13), true]
[InlineData(4), false]
有这样的吗?
没有这样的属性,但你可以这样做:
[Theory]
[InlineData(7, false)]
[InlineData(13, true)]
[InlineData(4, false)]
public void MyTest(int num, bool shouldBeGreaterThanTen)
{
bool isGreaterThanTen = MyCompMethod(num);
Assert.Equal(shouldBeGreaterThanTen, isGreaterThanTen);
}
我开始使用 xUnit
,但我有一个问题。
假设我正在测试一个接收 int
和 returns true
的函数,如果参数大于 10.
我知道我可以这样做:
[Theory]
[InlineData(7)]
[InlineData(13)]
[InlineData(4)]
public void MyTest(int num)
{
bool res = MyCompMethod(num);
Assert.True(res);
}
但它似乎还不够好,因为它会显示一些测试失败了,尽管它们没有。我也想输入预期结果,这样我就可以比较这些值,例如:
[Theory]
[InlineData(7), false]
[InlineData(13), true]
[InlineData(4), false]
有这样的吗?
没有这样的属性,但你可以这样做:
[Theory]
[InlineData(7, false)]
[InlineData(13, true)]
[InlineData(4, false)]
public void MyTest(int num, bool shouldBeGreaterThanTen)
{
bool isGreaterThanTen = MyCompMethod(num);
Assert.Equal(shouldBeGreaterThanTen, isGreaterThanTen);
}