使用@Before注释

时间:2017-08-22 11:53:42

标签: junit constructor annotations mocking

我想测试 SomeClass 方法。

为此,我需要在每个测试中使用 SomeClass 实例,因此我使用@Before注释并启动名为 SC SomeClass 实例

问题是: - 如何在我使用它之后测试构造函数?这没有意义。

其他问题: - 构造函数可以获取多个参数,它们可以影响方法输出,我应该模拟这个类而不是创建它的实例吗?

public class SomeClassTest {
        SomeClass SC;

        @Before
        public void initlize() throws IOException{
            SC= new SomeClass (argument1,argument2,..);
        }

        @Test
        public void ConstructorTest() {
        }

1 个答案:

答案 0 :(得分:1)

不要在ConstructorTest中使用对象SC。如果您不想使用某些参数构造SomeClass对象来测试某个结果,那么只需在ConstructorTest中构造它,然后在新构造的对象上声明您期望的相关结果。

不,你不应该嘲笑这门课。测试是为了测试这个类,所以如果你嘲笑它的行为,那么你就不会真正测试任何东西。