我在Eclipse中运行以下测试(带有-ea参数):
public class ColorHelperTest
{
@Rule
public ExpectedException thrown = ExpectedException.none();
@Test
public void testGetColorByString()
{
thrown.expect(AssertionError.class);
assert 1 == 2;
}
}
输出为:
java.lang.AssertionError
at de.*.*.*.mytests.ColorHelperTest.testGetColorByString(ColorHelperTest.java:28)
28是行
assert 1==2
为什么该测试失败?
最佳答案
您不能“期望” AssertionError
,这是JUnit用来表示测试失败的特定错误类型。
更新:原来是JUnit 4.11的一个错误,并且在4.12中已解决:
https://github.com/junit-team/junit/blob/master/doc/ReleaseNotes4.12.md#pull-request-583-pull-request-720-fix-handling-of-assertionerror-and-assumptionviolatedexception-in-expectedexception-rule
关于java - 为什么我的Junit-AssertionError-Test失败?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30511826/