如何在TestNG中执行数据参数化?
我们可以在TestNG中进行数据参数化。TestNG中执行的参数化可以通过以下方式完成-
使用@Parameters注释进行数据参数化。
使用@DataProvider注释进行数据参数化。
示例
带有@Parameter注释的TestNGxml文件的代码实现。
<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name = "Nhooo Test">
<parameter name = "Url" value="https://www.tutorial.com"/>
<test name = "Regression Cycle 1">
<classes>
<class name = "TestParameter" />
</classes>
</test>
</suite>我们可以通过在TestNGxml文件中定义<parameter>在运行时将值传递给测试方法。
示例
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
public class TestParameter {
@Test
@Parameters("Url")
public void loginwithUrl(String urlname) {
System.out.println("url的值是: " + urlname);}
}Java类文件具有带有(“Url”)的@Parameters。
带有@DataProvider注释的代码实现。
@DataProvider(name = "QuestionSearch")
public Object[][] quest_anssearch(){
return new Object[][]
{
{ “Nhooo”, “Java”},
{ “Python”, “PyCharm”},
};
}
@Test(dataProvider = "QuestionSearch ")
public void userInput(String subject, String lang){
System.out.println("这些值是: " + subject +”“+ lang);
}借助Java类文件中的@DataProvider,我们可以在运行时传递多个数据。