testng快速入门总结

1、  工具

1) 打开Eclipse   Help ->Install New Software ,   然后Add   "http://beust.com/eclipse"  下载安装testng插件(便于Eclipse可以通过插件运行操作testng,eg:run as>testng);或者maven testng插件(便于用maven命令执行testng)

2)  Maven依赖包:(代码中使用testng框架需要该依赖包)

<!-- TestNG -->

<dependency>

<groupId>org.testng</groupId>

<artifactId>testng</artifactId>

<version>6.9.10</version>

</dependency>

2、  快速入门实例

1)@test方法注解要执行的测试方法.也可以利用Eclipse的testng插件创建testn.class。具体步骤1)右键testng>generator testng class

 

2)利用Eclipse的testng插件创建testng.xml,运行testng.xml。具体步骤1)右键testng>convert to testng 即可创建testng.xml

3、  注解解析

1)@test注解解析 (对应测试用例)

    a)@test 注解的方法或者类会被测试套件执行。被测试的类会对应的加到<test>节点的<classes>节点下

    b)@test 注解还有一些属性 :

      @test(parameters=variblename) : parameters 指定变量名variblename。Eg: @test(parameters=testhi)对应testng.xml中的<test>节点下的<parameter name="testhi" value="liuyi"/>

      @test(groups="hi"):groups指定测试用例属于哪个group

      @test(groups="hi",dependsOnGroups=”say hi”): dependsOnGroups指定测试用例依赖哪个group先执行

      @test(enabled=true):enable指定测试用例是否禁用

 等等

2)@Parameters("testhi"),@Parameters({"parameter1","parameter2"}):的作用和@test(parameters=variblename)一样  

  3)@DataProvider(name = "databaseDp")指定参数提供者,该方法必须返回一个二元数组对象。Eg:

     @DataProvider(name = "databaseDp")

     public Object[][] databaseDataProvider(ITestContext context, Method method)

   method:对应的是正在执行的测试套下的测试用例

   如果要使用这个数据提供者提供的参数,则要在测试用例中指定参数提供者的name。具体操作如下:

   @Test(dataProvider = "databaseDp", description = "3", enabled = true)

   public void testScene01(String caseId, String caseTitle, String case_desc, String system_module)

 

注意:使用DataProvider提供数据有两种形式: 

第一种:一种是在把数据提供的代码和测试方法放在同一个类中; 

第二种:把所有的数据提供都单独写在另个类里面,当测试数据比较多时,这种方法利于维护。 Test必须指定测试数据Java类,如 @Test(dataProvider="dataprovider2",dataProviderClass=DataProviderMethod.class),否则执行的时候会Skip该方法,有报错提示“......requires a @DataProvider named : dataprovider2”,并且数据类里的方法必须声明为static,不然也提取不了数据。

更多注解详解请参看菜鸟教程或者testng官网 http://testng.org/doc/documentation-main.html

原文地址:https://www.cnblogs.com/happyliuyi/p/10361573.html