JAVA自动化测试TestNG框架

时间:2024-10-13 15:37:01

1.TestNG简介

JAVA自动化测试最重要的基石。官网:https://testng.org
使用注解来管理我们的测试用例。
发现测试用例
执行测试用例
判断测试用例
生成测试报告

2.创建Maven工程

2.1创建一个maven工程

在这里插入图片描述

2.2设置maven信息

在这里插入图片描述

2.3设置JDK信息

在这里插入图片描述

2.4引入testng依赖

    <dependencies>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>7.9.0</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

3.TestNG常用的注解

3.1将类或方法标记为测试的一部分

    @Test
    public void testLogin(){
        System.out.println("测试登录的用例");
    }

属性:

  • @Test(enabled = false) 标识他不是一个用例。
  • @Test(priority = -1) 标识测试方法的执行顺序,数值越小优先级越大。
  • @Test(dependsOnMethods = "方法名")解决测试用例之间的依赖关系。

3.2前后置注解

比如:连接数据库

package com.yufuabu.login;

import org.testng.annotations.*;

public class TestLogin {
    @BeforeSuite
    public void conn1(){
        System.out.println("测试套件前置:相当于整个项目");
    }
    @BeforeTest
    public void conn2(){
        System.out.println("测试模块前置:相当于一个模块");
    }
    @BeforeClass
    public void conn3(){
        System.out.println("测试类前置:相当于一个子模块");
    }
    @BeforeMethod
    public void conn4(){
        System.out.println("测试用例前置:相当于一个用例");
    }


    @Test
    public void test3(){
        System.out.println("test3");
    }
    @Test
    public void test1(){
        System.out.println("test1");
    }
    @Test
    public void test2(){
        System.out.println("test2");
    }


    @AfterSuite
    public void conn11(){
        System.out.println("测试套件后置:相当于整个项目");
    }
    @AfterTest
    public void conn22(){
        System.out.println("测试模块后置:相当于一个模块");
    }
    @AfterSuite
    public void conn33(){
        System.out.println("测试类后置:相当于一个子模块");
    }
    @AfterMethod
    public void conn44(){
        System.out.println("测试用例后置:相当于一个用例");
    }
}

3.3TestNG断言

    @Test
    public void test3(){
        System.out.println("test3");
        Assert.assertEquals("实际结果","预期结果");
    }

在这里插入图片描述

    @Test
    public void test3(){
        System.out.println("test3");
        Assert.assertTrue(true);
    }

在这里插入图片描述