在测试类(Junit)中调用静态方法

问题描述 投票:0回答:1

我正在为我的项目编写junit测试用例,但我面临一个问题这是我在我的一个Java类(GraphNodes.java)中使用的方法

 public static ArrayList<String> getCSList() {
    System.out.println(CSList.size()); // Output : 3
    return CSList; // returns 3 elements in list
}

现在是我的Junit测试班

@Test
public void checkCSListCount(){

 int actual= GraphNodes.getCSList().size();
 int excepted = 3;
 assertEquals(excepted,actual);  
 }

我的junit失败了,说出excepted <3>但实际<0>我也不能将静态方法更改为仅公开方法,因为它将影响代码的某些功能,并且由于我是junit的新手,所以我不知道如何解决此问题。所以任何人都可以在这里帮助我在此先感谢!

java junit4
1个回答
0
投票

我认为您正在尝试编写集成测试。因此,在检查列表大小之前,应调用该方法,该方法用3个元素填充列表。如果所有逻辑都在您的main方法中,则应将其提取到自己的方法中。

© www.soinside.com 2019 - 2024. All rights reserved.