TestNG中的参数Parameters概念

来源:互联网 发布:酒店数据接口 编辑:程序博客网 时间:2024/06/05 01:01

在测试类中定义的测试方法,通常是不带参数的,但如果确实想要参数怎么办呢?TestNG中的参数标注@Parameters主要解决这个问题。

使用TestNG中的参数标注@Parameters为测试方法传递参数,这个过程可以分为两步,第一步是在测试类中定义测试方法时,通过@Parameters为测试方法声明参数的名称;第二步是在testng.xml配置文件中制定测试规划时,通过测试参数的名称为测试参数赋值。

1. 在测试类中声明测试参数的名称

通过@Parameters可以声明多个参数,只要与测试方法的参数一一对应即可。如果参数不对应则在执行测试的时候会抛出异常。

示例如下:

@Parameters({ "first-name", "last-name" })@Testpublic void testSingleString(String firstName, String lastName) {  System.out.println("Invoked testString " + firstName + " " + lastName);}

2.在testng.xml配置文件中为测试参数赋值

在测试类中定义好的测试参数,其初始值是在testng.xml配置文件中设置的。对应不同的测试,初始值可能不同。示例如下:

<suite name="My suite">  <parameter name="first-name"  value="Cedric"/>  <parameter name="last-name"  value="Han"/>  <test name="Simple example">  <-- ... -->

在testng.xml配置文件中,可以通过全局参数(与各个测试用例无关,如上例所示)为测试参数赋值,也可以在各个测试用例中为测试参数赋值。如果一个测试参数,同时有全局赋值和测试用例赋值,则采用测试用例赋值。


1 0
原创粉丝点击