我想在一些数据集上测试我的代码。这是我公司的某些用户可以更新的文件列表。我在构建版本之前使用单元测试运行,不知道测试数据集现在是否已更新。我使用Microsoft.VisualStudio.TestTools.UnitTesting。现在,我编写这样的代码:
[TestMethod]
public void Test1()
{
foreach (var src in testDataSetFiles)
{
Assert.IsNotNull(someMethodForTest(src), "fail");
}
}
触发断言后,将停止Test1的单元测试。我知道这是可行的。但是也许有一种方法可以在某些src
失败之后继续测试运行?我不想为每个src
编写单独的TestMethod。谢谢!
答案 0 :(得分:0)
Assert将引发异常。您应该为每个要测试的案例进行测试。
也就是说,有很多方法可以做您想要的。您可以计算失败的次数:
[TestMethod]
public void Test1()
{
int nFails = 0;
foreach (var src in testDataSetFiles)
{
if (someMethodForTest(src) == null)
{
nFails++:
}
}
Assert.IsTrue(nFails == 0);
}
或者您可以尝试捕获并在列表中添加Assert给出的异常,并在最后检查它。