0
我有與相關數據如何從一個測試套件亞軍類
public abstract class AbstractTestClass extends TestCase
{
public ArrayList<TestDetails> testList;
}
擴展了JUnit的TestCase的抽象類訪問一個測試用例類變量,然後我有一個擴展抽象類的測試類
public class TestClass extends AbstractTestClass
這被包括在一個測試套件
@RunWith(Suite.class)
@Suite.SuiteClasses({
TestClass.class
})
public class TestSuite {
}
我然後運行測試スITE從主功能的亞軍類
public class TestRunner {
public static void main(String[] args) {
JUnitCore.runClasses(TestSuite.class);
}
}
我的問題是如何從亞軍類,即在訪問testList數據,如果我想在清單上打印出每個元素的細節從主。該數據是動態創建的(在試驗進行的同時)
嗨,謝謝你的回覆。我確實想到了這一點,但不幸的是我有很多AbstractTestClass的實例,因此使列表靜態不起作用。還有什麼你能想到的嗎? – doblo7 2014-11-18 09:14:40
我不認爲你可以獲得TestList數據的訪問權限,除非TestRunner類可以通過Inheritance訪問它,否則其他解決方法將不存在,因爲它會違反OOPS繼承的概念,唯一的解決方法是Multiple繼承是接口,所以你需要使用接口而不是抽象類,並使TestCase類至少實現getter方法,但是這不是一個好的解決方法,強烈建議將所有測試數據保存在一個地方而不是分佈式。 – Anirudh 2014-11-18 10:12:02
如果你仍然希望這樣做,你可以將所有的抽象類保存在一個地方或包中,你可以使用TestRunner類的靜態導入,並將testList保持爲靜態 – Anirudh 2014-11-18 10:32:42