Exception Junit:在不需要异常时添加处理逻辑

Exception Junit:在不需要异常时添加处理逻辑,exception,junit,Exception,Junit,我正在尝试打印异常的堆栈跟踪 但是,对于阴性测试用例,只打印意外异常 我正在使用@Rule ExpectedException进行异常检测 我不知道如何添加处理逻辑,以防引发意外异常 @Rule public ExpectedException thrown = ExpectedException.none(); @Test public void myTest() throws Exception { thrown.expect(MyException.class); thr

我正在尝试打印异常的堆栈跟踪

但是,对于阴性测试用例,只打印意外异常

我正在使用@Rule ExpectedException进行异常检测

我不知道如何添加处理逻辑,以防引发意外异常

@Rule
public ExpectedException thrown = ExpectedException.none();

@Test
public void myTest() throws Exception {
    thrown.expect(MyException.class);
    thrown.expectMessage("expected message");
}

您不能简单地捕获测试方法中的异常,然后打印堆栈跟踪吗?(如果你想的话,甚至可以重新引用它)。

你试过实施吗?

弗兰齐加,你可以试着满足你的理论兴趣:

@Test
public void myTest() throws Exception {

    catchException(obj).doSomethingExceptional();
    log(caughtException());
    assertTrue(caughtException() instanceof MyException.class);
    assertEquals("expected message", caughtException().getMessage());

}

我能做到,但我只是想知道是否还有其他解决办法。@franziga,你的观点是什么——这只是理论上的兴趣,还是你想真正实现一些具体的目标?