我有一个抽象类,它使用相关数据扩展JUnit TestCase
public abstract class AbstractTestClass extends TestCase
{
public ArrayList<TestDetails> testList;
}
然后我有一个扩展抽象类的测试类
public class TestClass extends AbstractTestClass
这包含在测试套件中
@RunWith(Suite.class)
@Suite.SuiteClasses({
TestClass.class
})
public class TestSuite {
}
然后我从具有主要功能
的跑步者类中运行测试套件public class TestRunner {
public static void main(String[] args) {
JUnitCore.runClasses(TestSuite.class);
}
}
我的问题是如何从跑步者类中访问testList数据,即如果我想从主要打印列表中每个元素的详细信息。数据是动态创建的(在运行测试期间)
答案 0 :(得分:0)
一种方法可能是将ArrayList Testlist声明为static并使TestRunner类扩展AbstractTestCase类:
现在您的AbstractTestCase类如下所示:
import java.util.ArrayList;
import junit.framework.TestCase;
public abstract class AbstractTestClass extends TestCase
{
public static ArrayList<TestDetails> testList;
}
并且您的TestRunner类看起来像:
import org.junit.runner.JUnitCore;
public class TestRunner extends AbstractTestClass{
public static void main(String[] args) {
JUnitCore.runClasses(TestSuite.class);
System.out.println(testList);
}
}
现在您可以从TestRunner访问testList。它可能不是最优雅的解决方案,但它有效。