Assert断言的使用

简介: Assert断言的使用

1、Junit测试类使用
2、Assert断言的使用


@[toc]


一、简介

org.springframework.util.Assert 断言工具类主要用于方法入参检测,检测数据是否符合预期;

1、判断值是否相同(assertEquals

(1)如果expected和actual两者一致,则往下执行.

(2)如果两者不一致, 抛出异常java.lang.AssertionError,异常详解为message;

Assert.assertEquals("message","expected","actual");

判断f1-f2的值是否大于f3的值,不满足则抛出异常java.lang.AssertionError,异常详解为message;

Assert.assertEquals("message", float f1, float f2, float f3);

2、判断值是否不同(assertNotEquals

(1)如果expected和actual两者不一致,则往下执行.

(2)如果两者一致, 中断测试方法, 抛出异常java.lang.AssertionError,异常详解为message(和assertEquals相反)

Assert.assertNotEquals("message","actual","actual");

3、用Boolean判断是否相同(assertTrue

(1)为true时,继续向下执行。

(2)为false时候,抛出异常,异常详解为message

Assert.assertTrue("message",false);

4、用Boolean判断是否不同(assertFalse

(1)为false时,继续向下执行。

(2)为true时候,抛出异常,异常详解为message

Assert.assertFalse("message",false);

5、抛出异常(fail)

抛出异常java.lang.AssertionError,异常详解为message

Assert.fail("message");

6、判断数组值是否相同(assertArrayEquals

(1)如果数组arrays1和arrays2的值相同,继续向下执行。

(2)如果两者不一致, 抛出异常,异常详解为message;

Assert.assertArrayEquals("message",arrays1,arrays2);

7、判断内容是否为null(assertNotNull

(1)如果object有值,继续向下执行。
(2)如果为null时, 抛出异常,异常详解为message;

Assert.assertNotNull("message","object");

8、判断是否为同一个对象(assertSame

(1)他俩是同一个object,继续向下执行。
(2)他俩不是同一个object, 抛出异常,异常详解为message;

Assert.assertSame("message","expected","expected");

9、判断是否不是同一个对象(assertNotSame

(1)他俩不是同一个object,继续向下执行。
(2)他俩是同一个object, 抛出异常,异常详解为message;

Assert.assertNotSame("message","expected","actual");

二、特殊情况举例

1、assertEqualsassertSame比较

一个是比较的内容是否相同,一个是比较的是否为同一个对象。后者的限制更严格;因为很多的情况下值相同,但确是两个不同的对象;

assertEquals(a,b) a与b有相同的值;
assertSame(a, b); pass如果他俩是同一个object.
目录
相关文章
|
2月前
|
前端开发 安全 测试技术
Postman Mac 版安装终极指南:从下载到流畅运行,一步到位
Postman 是 API 开发与测试的高效工具,支持各类 HTTP 请求调试与团队协作。本文详解 Mac 版下载、安装步骤,助你快速上手。同时推荐一体化 API 协作平台 Apifox,集文档、调试、测试于一体,提升开发效率与团队协同能力。
|
SQL XML Java
解决关于在idea使用Mybatis时, 编写xml的动态sql语句背景高亮不舒服问题
解决关于在idea使用Mybatis时, 编写xml的动态sql语句背景高亮不舒服问题
2964 0
|
8月前
|
SQL 数据库
【YashanDB 知识库】导入数据时报错:YAS-00008 type convert error:literal does not match format string
【YashanDB 知识库】导入数据时报错:YAS-00008 type convert error:literal does not match format string
|
4月前
|
存储 缓存 NoSQL
Spring Cache缓存框架
Spring Cache是Spring体系下的标准化缓存框架,支持多种缓存(如Redis、EhCache、Caffeine),可独立或组合使用。其优势包括平滑迁移、注解与编程两种使用方式,以及高度解耦和灵活管理。通过动态代理实现缓存操作,适用于不同业务场景。
374 0
|
6月前
|
Java Shell C#
子线程如何等待主线程执行完再执行
在业务不断迭代中,复杂逻辑难免出现。例如在大业务方法中需临时执行不影响主流程的特殊逻辑,可用子线程处理。若子线程依赖主线程结果(如数据库事务),需确保主线程先完成。文章提出两种解决方式:一是利用Spring事务传播机制拆分方法;二是通过判断父线程状态实现延迟执行,提供`ThreadEndExec`工具类,保守等待15秒后执行子线程任务,保证逻辑顺序与数据一致性。
|
Rust 数据挖掘 数据处理
Polars库:数据分析的新星,性能与易用性的完美结合
Polars库:数据分析的新星,性能与易用性的完美结合
604 1
Java中的switch语句详解
Java中的switch语句详解
|
安全 Java
java中BigDecimal详解
java中BigDecimal详解
|
Java
浅谈Java中的NAN与INFINITY:数值迷失与无限可能
浅谈Java中的NAN与INFINITY:数值迷失与无限可能
789 0
|
Java Spring 容器
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)
详解java参数校验之:顺序校验、自定义校验、分组校验(@Validated @GroupSequence)