我有一个使用 JUnit 4 编写的测试类,它有多种测试方法。每个测试都会打印一些重要的信息输出。然而,当我查看 IntelliJ 的日志时,先前测试的一些最后输出被记录为第一个测试的一部分。
为什么是这个?有没有办法纠正这种行为?
我只是写入System.out
,并在每次测试返回之前调用flush
实际上使问题变得更糟。
最佳答案
这只是一个错误。我通过 @After 中的 Thread#sleep 解决了这个问题
https://youtrack.jetbrains.com/issue/IDEA-66683
测试用例:
public class LogBug {
@Test
public void see() {
System.out.println("foo");
throw new AssertionError("bar");
}
@Test
public void see2() {
System.out.println("foo2");
throw new AssertionError("bar2");
}
}
关于java - IntelliJ 错误地划分 JUnit 4 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26916997/