2017-09-18 25 views
0

如何在junit4中调用其他类的静态方法@Before@Testjunit4:如何在junit4 @before或@Test中调用其他类的静态方法?

我有一个关于如何在junit4 @Test@Before中调用其他类方法的问题?

例如,我在UtilTool写了static方法

public static String readAllBytes(String filePath) { 
    String content = ""; 

    try { 
     content = new String(Files.readAllBytes(Paths.get(filePath))); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

    return content; 
} 

使用在junit4 @Before的定义方法:

@Before 
public void setUp() { 
    System.out.println("setUp......"); 
    UtilTool.readAllBytes("/tmp/test.txt") 

不过,我会收到以下错误消息时我称之为readAllBytes方法从Junit4的UtilTool@Before@Test

java.lang.NoSuchMethodError: ..... 

我该如何解决这个问题?

+1

这看起来像一个编译问题给我。你如何建立/运行你的测试? Maven的? –

+0

我只是想法编译我的项目,我不使用maven。 – sagr

+0

如果我在Junit Test类中声明readAllBytes方法,它将会正常工作。 – sagr

回答

0

我已经解决了这个问题,我犯了一个愚蠢的错误。我忘了在classpath中替换旧的jar。谢谢!

+2

理想情况下,应该关闭一个可能不可重现的问题,而不是回答。这不符合答案。 – nullpointer

+0

这不提供问题的答案。要批评或要求作者澄清,请在其帖子下方留言。 - [来自评论](/ review/low-quality-posts/17363933) –

+0

请使用您问题上的修改链接添加更多信息。后回答按钮应该只用于问题的完整答案。 - [来自评论](/ review/low-quality-posts/17363933) –