testng实战入门教程

TestNG入门

一、概述

1、TestNG是一个开源自动化测试框架

其灵感来自JUnit和Nunit,TestNG还涵盖了整个核心的JUnit4功能,但引入了一些新的功能,使其功能更强大,使用更方便。

优势:支持依赖测试方法,并行测试,负载测试,局部故障;灵活的插件API;支持多线程测试;

2、Maven依赖

idea默认已经安装testng了,检查是否安装:

File ==> Settings ==>Plugins ==> 搜索testng

在这里插入图片描述
若已经安装TestNG的插件,显示如下:
在这里插入图片描述
若没有,则搜索TestNG,进行下载

Eclipst也可以通过Maven添加

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

注意:Eclipse上想要运行还需要安装testng插件

注意:idea需要安装Create TestNG XML插件

File ==> Setting ==>Plugins ==>搜索Create TestNG XML插件安装 ==> 重启 ==> 选择项目文件夹 ==> 右键Create TestNG XML ==>刷新一下项目就能看到testng.xml文件了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tneNokMU-1594895419157)(D:\Program Files\Typora\自动化测试\images\image-20200716111021278.png)]

3、helloword

(1)被测试方法类HelloWorld:

package org.ant.test.testcase;

public class HelloWorld {
   

    public String hello(){
   
        return "hello world!";
    }
}

(2)测试类TestHelloWorld:

import org.testng.annotations.Test;

public class TestHelloWorld {
   

    // 测试返回结果不为空
    @Test
    public void tester1(){
   
        HelloWorld hello = new HelloWorld();
        String helloworld = hello.hello();
        // 检查返回结果
        Assert.assertNotNull(helloworld);
    }

    // 测试返回结果为"hello world!"字符串
    @Test
    public void tester2(){
   
        HelloWorld hello = new HelloWorld();
        String helloworld = hello.hello();
        System.out.println(helloworld);
        // 检查返回结果是否=hello world!
        Assert.assertEquals(helloworld,"Hello world!");
    }
}

(3)运行测试
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ewab8Bx1-1594895419160)(D:\Program Files\Typora\自动化测试\images\image-20200716094623270.png)]
(4)测试结果
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qA0LBFa3-1594895419162)(D:\Program Files\Typora\自动化测试\images\image-20200716094756535.png)]

二、@Test注解常用参数

1、测试方法是否执行enable

默认是true,如果设置为false,则在运行时不会执行这个测试方法;

例子:将tester1设置为跳过,不执行

@Test(enabled = false)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A8dHeBTa-1594895419164)(D:\Program Files\Typora\自动化测试\images\image-20200716095229489.png)]
运行结果:tester1跳过不执行
在这里插入图片描述

2、预期异常expectedException

注意:如果ClassName类抛出了异常,测算测试通过,没有异常算测试不通过;

1】单个异常
@Test(expectedExceptions = ClassName.class)

例子:测试被除数为0,抛异常
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qL5ehvXw-1594895419169)(D:\Program Files\Typora\自动化测试\images\image-20200716100635407.png)]
运行结果:java.lang.ArithmeticException: / by zero
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZKfBTtxo-1594895419171)(D:\Program Files\Typora\自动化测试\images\image-20200716100719896.png)]
复制ArithmeticException到@Test中设置预期异常,预期结果就是代码抛出异常ArithmeticException,用例通过的话,则通过@Test的expectedExceptions属性,通过该属性指定抛出异常的类

@Test(expectedExceptions = ArithmeticException.class)

再次执行通过
在这里插入图片描述

2】expectedExceptions的值也可以是一个数组
@Test(expectedExceptions = {
   ClassName.class, ClassName2.class,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值