2011-06-10 62 views
0

我希望有人可以告诉我,我正在运行的场景中通过junit4测试我的代码的最佳做法。测试方法或try-catch?

我的伪代码如下:

public class TestClass { 

    private String readFromFile(String filePath) { 
      use BufferedReader, get content file input 
      append BufferedReader to StringBuffer 
      return string 
    } 

    @Test 
    public void testMethodOne() { 
      String s = readFromFile(C:\fileOne); 
      doStuff(s); 
    } 
} 

是我遇到的问题是可以的BufferedReader抛出IOException。如果readFromFile()方法不是我正在分类的测试中的一种方法(我只需要它用于这些测试场景),那么我是否使用@Test (expected = IOException.class)对它进行了标注,还是应该使用try-catch块?

非常感谢!

+2

StringBuffer可以抛出IOException? – 2011-06-10 15:58:05

+0

对不起,我将它与BufferedReader一起使用 - 我会更新我的帖子以反映这一点。 BufferedReader抛出IOException – 2011-06-10 16:00:27

回答

2

如果它抛出一个异常并且你没有预料到它,那么这是一个特殊情况。如果文件不能被读取并且测试不能执行,那是错误的,它不是与测试本身相关的东西。

throws添加到readFromFile方法和使用它的测试方法。

+0

非常感谢,这很有道理! – 2011-06-10 16:03:59