Test wrapped expected exception inside a JUnit test method
我想测试在JUnit测试方法的某个部分中将
测试方法本身不应该抛出异常 - 只是它的一个特定部分。
我完成它:
1 2 3 4 5 6 7 8 | ... try { MyClass.staticMethod(); } catch (MyException e) { Assert.assertEquals(e.getCause().getClass(), EOFException.class); } ... // other asserts |
我想知道这是否是这种情况下的最佳实践,或者有更好的方法来实现这一点,也许有一些特定于异常的JUnit机制(我读了
catch-exception库的第2版(当前处于dev模式)允许您使用Lambda表达式,因此您也可以使用静态方法调用。
1 2 3 |
您可以使用Fishbowl库。
1 2 3 4 5 | ... Throwable e = exceptionThrownBy(() -> MyClass.staticMethod()) Assert.assertEquals(e.getCause().getClass(), EOFException.class); ... //other asserts |