我在eclipse中运行测试。罐子和测试都写得很好。我已经确定它不是版本错误等。在我运行测试后,控制台(在eclipse中)显示程序成功运行并终止但是在junit测试透视图中,在eclipse中,红色按钮变为禁用但是“重新运行”测试“仍然保持启用状态。没有故障迹线也没有看到绿色条表示测试成功。这里的任何指针都会有所帮助。
import static org.junit.Assert.assertEquals;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
public class ExampleTest{
@Before
public void setUp() throws Exception {
}
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@After
public void tearDown() throws Exception {
}
@AfterClass
public static void tearDownAfterClass() throws Exception {
}
@Test
public void validityTest() {
String userInput = ValidatorCode.validateStr("validStr");
assertEquals("theValidValue", userInput);
}
}
答案 0 :(得分:2)
我希望我没有弄错你。根据我的理解,你只有一个测试,这是成功的。现在,如果您没有启用切换(检查图像中带圆圈的按钮),那么您将看不到成功的测试。让您的测试失败,并再次检查,应始终显示失败的测试。
答案 1 :(得分:1)
找到一段代码,其中System.exit(0)
用于终止执行。显然,Junit并不喜欢这样。我用System.exit(0)
语句替换了return
,它就像一个魅力。
解决了这个问题后,我的另一个问题是Junit不喜欢System.exit(0)的逻辑是什么? System.exit(0)表示干净退出或顺利执行进程(没有任何警告),嗯!那不应该像Junit那样吗?