我使用TestNG及其dataProvider机制来运行测试用例。我并行运行TC。我有一个Test方法,该方法使用反射调用其他类中定义的实际测试用例逻辑。
在另一个类中编写的测试用例逻辑对其方法没有任何@Test注释。
现在每当任何测试用例抛出任何异常时,我都会捕获异常,然后
Assert.fail();
但是在testNG报告中,即使在一些TC失败后,它仍然表示失败= 0。
为什么TC没有失败?
请帮忙。
答案 0 :(得分:0)
我的代码出现问题。我正在使用反射调用专门为测试用例定义的所有方法。并且通过反射调用方法中的测试用例的实际逻辑。我试图从那里使用Assert.fail()
。所以测试用例没有失败,因为该方法不是TestNG的测试,因为该方法没有任何@Test
注释。
我从我的所有测试方法中抛出了一个自定义异常。然后在实际测试中捕获它们,使用反射调用这些方法,然后我使用Assert.fail()
,现在测试用例正确失败。