Java 如果测试目标方法';他被抓住了

Java 如果测试目标方法';他被抓住了,java,exception,junit,Java,Exception,Junit,我希望目标方法会导致一个异常,但是目标方法有一个try catch块来处理这个异常,所以我无法在我的测试方法中获得异常。你必须测试目标方法,你的junit必须符合它。如果在你的目标方法中,正在捕获并处理异常。您的junit测试用例必须断言,在任何情况下,目标方法都不会以异常结束 检查目标方法的catch块中正在执行的操作,并编写junit以检查catch块中的代码是否正常工作。该方法是否返回任何值?如果是这样的话,你可以断言这一点。但这篇文章很好地解释了你的问题: 为什么要获取异常? 您应该尝试

我希望目标方法会导致一个
异常
,但是目标方法有一个
try catch
块来处理这个异常,所以我无法在我的测试方法中获得异常。

你必须测试目标方法,你的junit必须符合它。如果在你的目标方法中,正在捕获并处理异常。您的junit测试用例必须断言,在任何情况下,目标方法都不会以异常结束


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

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


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

如果您想测试某个类型是否被捕获,那么即使在生产代码中抛出异常,也只需查看测试是否通过就足够了。