使用TestNG简介及注解说明

TestNG 简介

TestNg是一个强大的测试框架,设计灵感来源于junit,但优于junit,它提供了很强大的注解,便于我们对case的各种操作。

  1. TestNG 给我提供了啥?
    提供强大的注释,方便测试人员的使用。 2.支持数据驱动测试(DDT) 3.支持并行测试 4.可以灵活配置测试,强大的执行模式可生成多种测试报告等等
  2. TestNG 引入
    Pom.xml 添加如下:
    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>6.9.9</version>
    </dependency>
  1. TestNG 部分注解介绍
    @BeforeTest:
    注解的方法将被运行之前的任何测试方法属于内部类的 标签的运行。
    @BeforeMethod:
    注解的方法将每个测试方法之前运行。
    @Test:
    标记一个类或方法作为测试的一部分。
    @AfterMethod:
    被注释的方法将被运行后,每个测试方法。
    @AfterTest:
    注解的方法将被运行后,所有的测试方法,属于内部类的标签的运行。
package com.testng.cn;

import org.testng.annotations.*;

public class TestNgDemo1 {
    @BeforeClass
    public  void  beforClass(){
        System.out.println("这是beforClass");
    }
    @BeforeMethod
    public void beforMethond(){
        System.out.println("这是beforMethond");
    }
    @Test
    public void beforTest2(){
        System.out.println("这是Test 测试1");
    }

    @Test
    public void beforTest1(){
        System.out.println("这是Test 测试2");
    }
    @Test
    public void abeforTest3(){
        System.out.println("这是test 测试3");
    }
    @AfterClass
    public void afterClass(){
        System.out.println("这是afterClass");

    }
    @AfterMethod
    public void aftermMethod(){
        System.out.println("这是aftermMethod");
    }

}

运行结果:
这是beforClass
这是beforMethond
这是test 测试3
这是aftermMethod
这是beforMethond
这是Test 测试2
这是aftermMethod
这是beforMethond
这是Test 测试1
这是aftermMethod
这是afterClass
**

注意:
从结果来看,这里执行顺序不是按代码先后顺序执行,是根据ASCII码表来执行case,代码中test3是在最后的一个case,但执行结果中却在第一个,因为a在ascii码表中最小,所以这里优先执行

**

TestNG 部分常用校验方式

相等:
Assert.assertEquals();
不等:
Assert.assertNotEquals();
不为空:
Assert.assertNotNull();
为空
Assert.assertNull();

package com.testng.cn;

import org.testng.Assert;
import org.testng.annotations.Test;

/**
  TestNG 部分常用校验方式
 相等:
 Assert.assertEquals();
 不等:
 Assert.assertNotEquals();
 不为空:
 Assert.assertNotNull();
 为空
 Assert.assertNull();
 */
public class TestNgDemo2 {
    /**
     * 注意:断言后最好不要接case(可以接建议不要接原因是如果前面断言失败后面就不回执行),断言后可以继续接断言,  如场景:登陆成功后在继续操作新增或者删除,可以直接另外在写一个case,
     */
    @Test
    public  void asserteQualsTest(){
        //相等 Assert.assertEquals();
        String c="a";
        String d="a";
        Assert.assertEquals(c,d);

        //失败
        String a="a";
        String b="b";
        Assert.assertEquals(a,b,"不相等");
    }
    @Test
    public  void asserteQualsTest1(){
        //不等:Assert.assertNotEquals();
        String c="a";
        String d="b";
        Assert.assertNotEquals(c,d);
    }

    @Test
    public  void assertNotNullTest(){
        //不为空:
        // Assert.assertNotNull();
        String s="";
        Assert.assertNotNull(s);
    }
    @Test
    public void assertNullTest(){
        // 为空
        // Assert.assertNull();
        String s=null;
        Assert.assertNull(s);
    }
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值