18

我有一个单元测试用例,其中涉及创建一些具有随机内容的文件,然后使用这些文件进行测试,并在清理时删除这些文件。

所以我需要在@Before 方法中创建文件并写入文件。我应该如何处理异常?

4

1 回答 1

18

如果您的测试类需要这些文件来执行其测试,那么您应该使用throws IOException. 这样,如果文件创建失败,测试类将失败,原因从异常中显而易见。如果您捕获并抑制 IOException,则需要这些文件的单元测试无论如何都可能会失败,并且需要进行侦查工作。

对于@After 方法,风险并不高。我会声明 @After 方法throws IOException只是因为它更容易编码和阅读。您可能会捕获 IOException 而不会造成太大伤害,但是,清理不应该总是成功吗?如果该代码无法清理文件,则说明您的环境有些奇怪,意识到这一点可能会很好。所以这是添加throws IOException到 @After 方法的另一个原因。

于 2012-12-11T01:47:00.840 回答