c# – xUnit中是否存在预期的结果属性?
作者:互联网
我开始使用xUnit,我有一个问题.
假设我正在测试一个接收int的函数,如果参数大于10则返回true.
我知道我可以这样做:
[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);
}
标签:c,xunit-net 来源: https://codeday.me/bug/20190528/1170869.html