我正在编写自己的JUnit Assert?如何测试它?
我知道如何提供一个可以通过和一个会失败的输入,但是如何为这些东西编写一个JUnit测试呢?
自定义的assert将类似于:
public static void assertSomething() {
if (!something()) {
fail("Expected something, but ...");
}
}
如何捕捉到失败的情况?
我正在编写自己的JUnit Assert?如何测试它?
我知道如何提供一个可以通过和一个会失败的输入,但是如何为这些东西编写一个JUnit测试呢?
自定义的assert将类似于:
public static void assertSomething() {
if (!something()) {
fail("Expected something, but ...");
}
}
如何捕捉到失败的情况?
fail()
会抛出一个junit.framework.AssertionFailedError
,如果你愿意,可以在你的断言方法的单元测试中捕获它。
示例:
@Test(expected = AssertionFailedError.class)
public void testMyAssertFails() {
assertSomething("valueThatWillFail");
}
@Test
public void testMyAssertPasses() {
assertSomething("valueThatPasses");
//if you reach this line, no failure was thrown
}