0
我的情況是:TestNG的 - 導入/運行不同類別的測試
public class ExampleTest extends AbstractExampleTest {
@Test(dependsOnMethods={"someMethodFromAbstractExampleTest"}
public void firstTest() {
// Assert
}
// here I would like to call CommonTests
}
public class CommonTests {
@Test
public void sharedTest() {
// Assert
}
}
的原因類似CommonTests存在,是它將包含重複的測試序列。我目前將ExampleTest中的信息傳遞給CommonTests的方式是通過似乎可行的靜態功能完成的,但可能不是最好的。
如果我根據TestNG文檔以編程方式調用CommonTests,此工作正常。我遇到的問題是結果沒有記錄在ExampleTest的runner中。
@Test
public void actionBasedTest(ITestContext context) {
TestListenerAdapter tla = new TestListenerAdapter();
TestNG testng = new TestNG();
testng.setTestClasses(new Class[] { ExampleAction.class });
testng.addListener(tla);
context.getSuite().addListener(tla);
testng.run();
}
上面的是稍微好一點,但彙報僅限於類似「[email protected]####」和不公開的測試方法運行。
所以我的問題是:我可以從另一個類(es)運行測試(es)(不通過繼承),並獲得結果記錄到同一個監聽器?
編輯:我想避免testng.xml。
哦,是的,的確如此。儘管我希望避免使用testng.xml。 – happypolla
只是好奇,是什麼原因? –
我認爲能夠在沒有額外要求的情況下運行測試會很好(即直接從IDE運行該類)。在構建環境中,它會很好。 但我打算開始玩XML。我認爲IDE集成在那裏,所以它不是一個大麻煩。 – happypolla