如果被捕获,如何从测试目标方法中获取异常

时间:2015-07-02 03:14:59

标签: java exception junit

我希望目标方法会导致Exception,但目标方法有一个try-catch块来处理这个异常,因此我无法在测试中获得异常方法

3 个答案:

答案 0 :(得分:1)

您必须测试目标方法,并且您的junit必须符合it.if在您的目标方法中,异常被捕获并处理您的junit测试用例必须断言在任何条件下目标方法都以异常结束。

检查目标方法的catch块中正在执行的操作,并编写junit以检查catch块中代码的正常运行。

答案 1 :(得分:1)

该方法是否返回任何值?如果是这样,你就可以断言。但这篇文章很好地解释了你的问题:

How to test that no exception is thrown?

答案 2 :(得分:0)

为什么要获得例外?
您应该尝试将单元测试视为黑盒测试。建立一些前置条件(设置场景),然后验证后置条件(检查实际结果,例如返回值,对象状态或模拟交互)。

如果要测试某个类型是否被捕获,即使在生产代码中抛出异常,也可能看到测试只是通过了。