总的来说,我真的是 JUnit 和单元测试的新手,我正在努力寻找正确的方法。处理意外异常的更好方法是什么,为什么?
方法一:
- 首先捕获预期的,通过一条消息使测试失败
- 在最后一个 catch 块中,捕获一个一般异常并通过一些“发生意外异常”消息使测试失败
方法B:
- 仅捕获预期的,失败并显示消息
- 用标记测试方法
throws Exception
并让任何意想不到的“冒泡”完全退出测试
更令人困惑的是,通过说“意外异常”,我的意思是以下任何一种:
- 被测试的方法声称抛出的异常,但在这种情况下。例如,我的方法抛出 IllegalArgumentException 和 NullPointerException,但在这个 try 块中,我希望它抛出 IllegalArgument;NullPointer 被认为是意外的。赶上失败还是冒泡?
- 我真的无法预料的一般例外
我知道这个问题有点令人困惑,我自己也迷失了,但希望有人能给我任何暗示。不会因为投反对票而责怪你,它仍然值得冒险:)