测试框架-TestNG-断言方法

2022-07-25 16:03:39 浏览数 (1)

断言方法

目录

1、Assert类(硬断言)

2、SoftAssert(软断言)

在执行自动化测试用例的时候,我们需要自动判断用例执行完成后获得的输出值是否与预期值一致,这个时候就要用到断言方法。

分为:Assert类(硬断言)、SoftAssert类(软断言)

1、Assert类(硬断言)

Assert类:org.testng.Assert,作为放置一系列断言的静态方法的容器。

硬断言就是,运行到断言失败处,后面还有其他代码行,也不会继续执行下去。

断言方法基本上是有1至3个输入参数,1个参数为真或假;2-3个参数的顺序是actualValue(实际值)、expectedValue(期望值)、[, message](信息)。

断言方法:

代码语言:javascript复制
(1)assertTrue:判断是否为True。
(2)assertFalse:判断是否为False。
(3)assertSame:判断引用地址是否相同。
(4)assertNotSame:判断引用地址是否不相同。
(5)assertNull:判断是否为null。
(6)assertNotNull:判断是否不为null。
(7)assertEquals:判断是否相等。
(8)assertNotEquals:判断是否不相等。
(9)assertEqualsNoOrder:判断忽略顺序是否相等。

1、创建AssertDemo类

脚本代码:

代码语言:javascript复制
package com.demo.assertDemo;

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

public class AssertDemo {

       @Test
       public void testCase1() {
              Assert.assertEquals(1, 2, "用例失败");
              System.out.println("打印信息testCase1");
       }

       @Test
       public void testCase2() {
              Assert.assertEquals(1, 1);
              System.out.println("打印信息testCase2");
       }

}

2、执行脚本(AssertDemo鼠标右键Run As--->TestNG Test)。

3、执行结果:

控制台打印结果信息:

testCase1方法断言失败,因为是硬断言,所以不执行后面的打印语句;

testCase2方法断言成功并执行后面的打印语句。

TestNG结果报告:

2、SoftAssert(软断言)

SoftAssert类:org.testng.asserts.SoftAssert,这个类是需要创建实例对象,才能调用相关实例方法进行软断言。

软断言就是,如果一个断言失败,会继续执行这个断言下的其他语句或者断言。

在该用例的最后一个断言后面一定要调用assertAll()方法。

1、创建SoftAssertDemo类

脚本代码:

代码语言:javascript复制
package com.demo.assertDemo;

import org.testng.annotations.Test;
import org.testng.asserts.SoftAssert;

public class SoftAssertDemo {

       @Test
       public void testCase1() {
              SoftAssert softAssert = new SoftAssert();
              softAssert.assertEquals(1, 2, "用例失败");
              System.out.println("打印信息testCase1");
              softAssert.assertAll();
       }

       @Test
       public void testCase2() {
              SoftAssert softAssert = new SoftAssert();
              softAssert.assertEquals(1, 1);
              System.out.println("打印信息testCase2");
              softAssert.assertAll();
       }

}

2、执行脚本(SoftAssertDemo鼠标右键Run As--->TestNG Test)。

3、执行结果:

控制台打印结果信息:

testCase1方法断言失败,因为是软断言,所以执行后面的打印语句;

testCase2方法断言成功并执行后面的打印语句。

TestNG结果报告:

uml

0 人点赞