【发布时间】:2015-03-25 16:49:27
【问题描述】:
我正在 Eclipse 中运行测试。 jar 和测试已正确编写。我已经确定它不是版本控制错误等。在我运行测试后,控制台(在 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);
}
}
【问题讨论】:
-
请展示一个简短但完整的示例来说明问题。您可能认为测试编写正确 - 这并不意味着它一定是......
-
感谢您阅读 Jon Skeet。这是代码(我已经用代码编辑了帖子)
-
我在课堂上没有看到
RunWith注释 - 这是故意的吗? -
我之前没用过Runwith注解。我怀疑 eclipse 和库设置,但这些都不是问题。我快速阅读了 Runwith 注释,但请赐教,我如何在这个测试中添加 Runwith?再次提前感谢您的宝贵时间。
-
我一直在 Eclipse 中使用
@RunWith(JUnit4.class),但很可能这实际上并不是必需的。 (现在将对其进行测试。)如果您将测试更改为不实际测试 jar 文件中的任何内容 - 例如改成String userInput = "not a valid value";可以测试吗?