公共类NewTest扩展了SeleneseTestCase {
public static Test suite() throws Exception
{
TestSuite suite = new TestSuite();
TestSuite s = new TestSuite("TestCase Name");
GeneratedTest t = new GeneratedTest("testName");
t.setFailure("TestCase Name: testName");
s.addTest(t);
t = new GeneratedTest("testAge");
s.addTest(t);
suite.addTest(s);
s = new TestSuite("TestCase Name2");
t = new GeneratedTest("testOOGABOOGA");
t.setFailure("TestCase Name2: testOOGABOOGA");
s.addTest(t);
suite.addTest(s);
s = new TestSuite("TestCase Name4");
t = new GeneratedTest("testName");
t.setFailure("TestCase Name4: testName");
s.addTest(t);
t = new GeneratedTest("testAge");
s.addTest(t);
suite.addTest(s);
s = new TestSuite("TestCase Name3");
t = new GeneratedTest("testName");
t.setFailure("TestCase Name3: testName");
s.addTest(t);
t = new GeneratedTest("testAge");
s.addTest(t);
suite.addTest(s);
return suite;
}
}
public class GeneratedTest extends TestCase
{
public String testFailMessage;
public GeneratedTest(String name)
{
((TestCase)this).setName(name);
}
public void runTest()
{
if (testFailMessage != null)
{
fail(testFailMessage);
}
}
public void setFailure(String msg)
{
testFailMessage = msg;
}
}
正如您所看到的(或者您可能不会)我在运行时向junit添加测试。除了它没有正确显示它们之外,这一切都很精致和花花公子。在这里,看看我的意思:
正如您所看到的,具有相同名称的测试甚至不会显示它们已被运行,除了上一次具有重复名称的测试,并且该测试具有来自所有其他具有相同名称的测试的错误消息
这只是一个我正在做的方式(junit3风格)的缺陷吗?我是否必须更改它以使用junit4参数化来修复它?
答案 0 :(得分:0)
我在Eclipse的测试运行器中发现了类似的东西。对于JUnit 3.8样式参数化测试,名称未显示。切换到JUnit 4样式解决了这个问题。
虽然这不完全符合您的情况,但我认为在您将测试更新到JUnit 4之前,您必须要接受它.Eclipse确实仍然运行测试,这是重要的事情。