TestNG-在测试执行报告中可以忽略dataprovider测试方法吗?

时间:2018-12-28 08:05:27

标签: testng testng-dataprovider

我正在使用dataProvider方法并使用此dataprovider形成URL,并且应将此形成的URL传递给下一个dataprovider。可以在TestNG-测试执行报告中忽略此数据提供者测试方法吗?

TestNG中的第一个DataProvider A应该被忽略-测试执行报告

@Test(dataprovider = "A")    
public void getURL(String URL){    
    finalURL = URL +apiURL;    
}

@Test(dataprovider ="B")    
public void getStatus(){    
    closeableHttpResponse = restClient.get(finalURL, headerFormation());     
}   

1 个答案:

答案 0 :(得分:0)

没有开箱即用的方式来执行此操作。数据驱动测试方法也是@Test方法。 TestNG不能将它们与常规测试方法区分开。

因此TestNG中的默认报告不具备此功能。

您可以改为执行以下操作:

  1. 确保您使用的是TestNG 7.0.0-beta1(截止到今天的最新发行版本)
  2. 实施org.testng.IReporter(testng的报告侦听器)。
  3. 对于每个ITestResult对象,只需检查其是否为数据驱动方法即可(您可以通过检查result.getMethod().isDataDriven()并检查其是否为真)
  4. 如果(3)为false,则为其构建报告;如果(3)为true,则跳过报告测试方法的结果。