是否有可接受的方式(或已经编写的代码)从外部文件向TestNG输入复杂数据?
例如,使用TestNG和HTMLUnit,我可能想要在一个单独的XML文件或testng文件中定义一堆URL和自定义Xpath测试,提取它然后将其用作dataProvider。
例如,将此文件输入testNG(作为单独的文件或作为testng.xml的一部分):
<pages>
<url value="http://www.bar.com">
<element-exists>
<xpath>//div[@class='baz']</xpaths>
<xpath>//div[@class='bat']</xpath>
</element-exists>
</url>
<url value="http://www.bar.com/foo">
...
</url>
</pages>
会告诉我的测试针对bar.com和bar.com/foo运行,对页面运行一些元素存在的断言。可能?如果是这样,怎么样?我理解使用dataProviders参数化测试并使用@Factory有条件地创建测试用例,但是如何让TestNG读取输入?任何最佳实践都表示赞赏。
答案 0 :(得分:2)
读取@DataProvider中的数据并将其提供给您的测试方法,该方法将接收此数据作为参数。它应该非常简单。