logo图片
TestNG教程

TestNG 注释参数

TestNG 注释参数

TestNG 参数是我们传递给测试方法的参数。我们可以通过两种方式将参数传递给测试方法:
TestNG 参数 TestNG 数据提供程序
在本主题中,我们将了解 TestNG 参数。我们将了解 xml 文件中的参数化。
假设我们要设置全局变量,如url设置、用户名、密码或API Keys,有一些值在所有测试用例中都是不变的,在这种情况下我们使用TestNG参数。
TestNG 参数存在于 xml 文件中。它们可以应用在 标记或 标签。如果我们想把参数应用到所有的测试用例中,那么参数就应用在标签。如果参数特定于特定的 文件夹,然后在一个 标签。
我们通过一个例子来理解。
第一种情况: 当参数应用在 标签。
第一步: 打开Eclipse。
第二步: 我们创建三个类文件,即 Sum.java、Subtract.java 和 Multiply.java。
Sum.java
package com.lidihuo;
import org.testng.annotations.Test;
import org.testng.annotations.Parameters;
public class Sum 
{
@Test
@Parameters({"a","b"})
public void add(int c, int d)
{
int sum=c+d;
System.out.println("Sum of two numbers : "+sum);
}
}
     
Subtract.java
package com.lidihuo;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
public class Subtract 
{
@Test
@Parameters({"a","b"})
public void add(int c, int d)
{
int subtract=c-d;
System.out.println("Subtraction of two numbers : "+subtract);
}
}
     
Multiply.java
package com.lidihuo;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
public class Multiply 
{
@Test
@Parameters({"a","b"})
public void add(int c, int d)
{
int mul=c*d;
System.out.println("Multiplication of two numbers : "+mul);
}
}
     
第 3 步: 现在,我们创建 testng.xml 文件。
testng.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<parameter name="a" value="5"/>
<parameter name="b" value="3"/>
<test name="Sum"> 
  <classes>
  <class name= "com.lidihuo.Sum"/>
  </classes>
  </test> <!--Test-->
  <test name="Subtract">
  <classes>
  <class name="com.lidihuo.Subtract"/>
  </classes>
  </test>
  <test name="Multiply">
  <classes>
  <class name="com.lidihuo.Multiply"/>
  </classes>
  </test>
</suite> <!--Suite-->
     
在上面的testng.xml文件中,我们传递了对所有类都有效的参数。
步骤4: 运行testng.xml文件。
p>
输出
TestNG Parameters
第二种情况: 当参数为 <测试> 具体的。
第 1 步: 打开 Eclipse。
第 2 步: 我们创建两个类文件。即 Fruits.java 和Vegetable.java。
Fruits.java
package com.lidihuo;
import org.testng.annotations.Test;
import org.testng.annotations.Parameters;
public class Fruits 
{
@Test
@Parameters("mango")
public void mango(String m)
{
System.out.println("Fruits names are:  ");
System.out.println(m);
}
@Test
@Parameters("orange")
public void orange(String o)
{
System.out.println(o);
}
}
     
Vegetable.java
package com.lidihuo;
import org.testng.annotations.Test;
import org.testng.annotations.Parameters;
public class Vegetable 
{
@Test
@Parameters("Cauliflower")
public void c(String m)
{
System.out.println("Vegetable names are :");
System.out.println(m);
}
@Test
@Parameters("Ladyfinger")
public void orange(String l)
{
System.out.println(l);
}
}
     
第 3 步: 现在,我们创建 testng.xml 文件。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<test name="Fruits"> 
<parameter name="mango" value="mango"/>
<parameter name="orange" value="orange"/>
<classes>
<class name= "com.lidihuo.Fruits"/>
</classes>
</test>
<test name="Vegetables"> 
<parameter name="Cauliflower" value="Cauliflower"/>
<parameter name="Ladyfinger" value="Ladyfinger"/>
<classes>
<class name= "com.lidihuo.Vegetable"/>
</classes>
</test>
</suite> <!--Suite-->
     
在上面的 testng.xml 中,我们指定了一个特定的参数 文件夹意味着参数应用于那些特定于那个的类 文件夹。
第 4 步: 运行 testng.xml 文件。
输出
TestNG 参数
昵称: 邮箱:
Copyright © 2020 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4