有没有可能让TestNG DataProvider从testng.xml配置文件中读取测试数据?还是由于某些原因这是不现实的?我想能够在套件级别和类级别从那个文件中读取测试数据。
所以,假设有一个像这样的testing.xml文件(我不确定是否现实),我该如何做呢?我以前使用过XStream(或Jackson)编写DataProvider,因此我很熟悉自己的自定义.xml格式,但是严格遵守testing.xml的格式却让我感到担忧。
以下testing.xml明显无效,但我只是想展示我想做的事情的类型:
那么,这种情况是否可能呢?如果可以,应该如何实现?
所以,假设有一个像这样的testing.xml文件(我不确定是否现实),我该如何做呢?我以前使用过XStream(或Jackson)编写DataProvider,因此我很熟悉自己的自定义.xml格式,但是严格遵守testing.xml的格式却让我感到担忧。
以下testing.xml明显无效,但我只是想展示我想做的事情的类型:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="TestAll">
<parameter name="hubUrl" value="http://localhost:4444/wd/hub"/>
<parameter name="reportFile" value="CustomReport.html"/>
<test name="etsy">
<parameter name="reportFile" value="CustomReport.html"/>
<classes>
<class name="qa.examples.suite.TestSearch">
<parameter name="appUrl" value="http://etsy.com" type="java.lang.String"/>
<parameter name="browser" value="Firefox" type="java.lang.String"/>
<parameter name="testEnabled" value="true" type="java.lang.Boolean"/>
<methods>
<include name="testEtsySearch"/>
<tests>
<test>
<parameter name="testNum" value="1" type="java.lang.Integer"/>
<parameter name="searchTerm" value="cell phone" type="java.lang.String"/>
<parameter name="searchTerm" value="batteries" type="java.lang.String"/>
</test>
<test>
<parameter name="testNum" value="2" type="java.lang.Integer"/>
<parameter name="searchTerm" value="buttons" type="java.lang.String"/>
<parameter name="searchTerm" value="metal" type="java.lang.String"/>
</test>
</tests>
</include>
</methods>
</class>
<class name="qa.examples.suite.TestFilters" />
</classes>
</test>
</suite>
那么,这种情况是否可能呢?如果可以,应该如何实现?