在junit测试中打包私有成员变量

时间:2013-02-03 12:16:48

标签: java unit-testing junit

我正在开发一个项目,其中junit测试的所有成员变量都声明为包私有。

例如:

public class MyTest {

    MyObject someObject;

    @Before
    public void setUp() throws Exception {
        someObject = new MyObject();
    }
}

而不是:

public class MyTest {

    private MyObject someObject;

    @Before
    public void setUp() throws Exception {
        someObject = new MyObject();
    }
}

我知道最初编写测试的人通常知识渊博,参加很多会议,读过很多书。所以我想知道他可能在哪里选择了这个,这可能是什么原因?

1 个答案:

答案 0 :(得分:0)

这可以是一种风格的东西,就像其他任何东西一样。有些人倾向于默认情况下私有化,然后根据需要打开范围。也许他使用的IDE默认包装私有。这真的很难回答为什么有人可能会这样做。

我会说在这种情况下,你最好是私人的。但是没有看到其余的代码,很难说。如果它正在从其他地方使用,那么您可能会考虑创建一个基本测试类,其他测试扩展到捕获一些常见功能。在这种情况下,你给出的是一个反映它的目的的名称。