【发布时间】:2011-12-20 15:58:31
【问题描述】:
我已经进行了以下测试,我已经进行了尝试,因此如果实际值不等于预期值,它将失败:
try{
Assert.assertEquals(ExpectedCount, ActualCount);
}catch (Throwable t){
System.out.println ("Actual value is not equal to expected value");
}
每当我运行此测试时,它都会通过。但是,如果 expected=actual 不打印任何消息,这是正确的。如果它们不相等,那么我打印的消息。所以测试逻辑是有效的。
但是,Juint 测试仍然通过。
我一直在尝试合并以下内容,但无法使其正常工作:
(在测试类的公共级别添加了这个)
@Rule
Public ErrorCollected errCollector = new ErrorCollector();
添加:
errCollector.addError(t);
下
System.out.println ("Actual value is not equal to expected value");
我收到错误回复“Rule cannot be resolved to a type”它没有给我任何导入选项。
我一直试图找出如何使用@Rule 方法使测试失败,但无法弄清楚。
【问题讨论】:
-
你捕获了junit抛出的异常,使测试失败。因此测试通过了。
-
我将它们作为套件的一部分运行,所以我需要知道它失败了。
-
检查你的junit版本@Rule是在junit4.7中引入的
-
谢谢oers。现已排序。
标签: testing selenium junit try-catch junit-rule