открытый класс 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, чтобы исправить это?