您好我想在數據提供程序中沒有數據時停止進一步的測試執行。我的數據提供者在運行中動態填充。因此,如果數據提供者中沒有數據,我希望我的測試停止執行。以下是我的代碼片段。如果數據提供程序爲空,則停止testNG的測試執行
package myTest;
import org.testng.Reporter;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Factory;
import org.testng.annotations.Test;
public class NewTest
{
String str;
@DataProvider
public Object[][] test123()
{
System.out.println(" Filling dataprovider.");
return new Object[][]{};
}
@Factory(dataProvider="test123")
public NewTest(String str)
{
System.out.println("Running through factory.");
this.str=str;
}
@Test
public void test1234()
{
Reporter.log("--->>> running test "+str,true);
}
}
我希望如果dataprovider爲空,test1234不應該運行。
你運行測試?我想TestNG的自動注意到了這一問題,並如果您的測試沒有采用任何參數,並且您將空的dataProvider傳遞給它,它將不會運行您的測試。 – avinesh
是的,我跑了上面的測試,它產生了所有的報告和所有。這就是我不想生成的東西。所以問題是我有大量的測試,很難通過每個報告,看看測試是否已經運行。所以我希望如果沒有測試數據,那麼就不會生成報告。 –