让我们说我有一个JUnit测试,如:
Assert.assertTrue(complexResult.toString(), someMethod(in1, in2, complexResult)
如果测试失败,我的消息将是一个complexResult字符串,之前是调用someMethod的测试的有趣部分,而不是测试失败后我的complexResult的字符串视图。
有没有比以下更好的方式:
if (!someMethod(in1, in2, complexResult)) {
Assert.fail(complexResult.toString());
}
答案 0 :(得分:2)
boolean result = someMethod(in1, in2, complexResult);
assertTrue(complexResult.toString(), result);
答案 1 :(得分:2)
是的,只需预先评估断言调用的参数。
boolean result = someMethod(in1, in2, complexResult);
Assert.assertTrue(complexResult.toString(), result);
这比失败方法更优雅。