Junit常用断言

0.断言简介

断言:assert
Q:断言的作用

更方便的对结果进行判定
"有针对性"的if判断

  • 针对两个变量值是否相同 使用assertEquals
  • 针对两个对象是否相同 使用assertSame
  • 针对返回值是否为True 使用assertTrue

1.断言的参数

assertXXX("断言失败时提升的信息",预期结果,实际结果)

例(判断两个值是否相同):

assertEquals("预取结果和实际结果不同",233,244)

不论用于判断什么的断言 第一个参数都为断言失败时的提升信息(固定的)

2.如何使用断言

1,导入断言相关库

import org.junit.Assert.*;

2.编写测方法并使用断言

java 复制代码
//  判断是否相等值
    @Test
    public void testAssertEqualus_1() {
	int a=111;
	assertEquals("不相同原因是:", a,a);
    }

3.常见的断言

@assterEquals()

功能:判断两个值是否相同

  • 能判断 int 、short 、long 、byte 、char 或 java.lang.Object
    参数:assertEqules("断言失败是时的提升信息",预期结果,实际结果)
  • *如果是doule 或者是 float 则需要另外加一个参数(误差)
    判断方式:实际结果-预期结果<=误差
    assertEqules("断言失败",2.333,2.334,0.001)
    2.334-2.333<=0.001成立 则断言通过

assertEqules("断言失败",2.333,2.334,0.0001)

2.334-2.333<0.0001不成立 则断言不通过

assertNull()

功能:判断对象是否为空

参数:assertNUll("断言错误的提示信息,判断对象")

assertNotNUll()

功能:判断对象是否不为空

参数:assertNUll("断言错误的提示信息,判断对象")

assertTrue()

功能:判断 返回值是是否为True

参数:assertNUll("断言错误的提示信息,判断对象")

assertFales()

功能:判断 返回值是是否为Fasle

参数:assertNUll("断言错误的提示信息,判断对象")

4.测试代码

java 复制代码
package com.jaylan.example;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;

//引入断言相关库
import org.junit.Assert.*;
import org.junit.Test;
//常用断言(特殊的判断条件)
public class ExampleTest_2 {

    int b=222;
    int c=333;
    double d=1.111;    
//   判断是否相等值
    @Test
    public void testAssertEqualus_1() {
	int a=111;
//	判断int类型是否相同
//	参数:判断不同时提示的内容,预期结果,被判断的结果
	assertEquals("不相同原因是:", a,a);
	
    }
    
//  判断是否相等 值
   @Test
   public void testAssertEqualus_2() {
       double e=2.333;
       double f=2.334;
//	判断double类型是否相同
//	参数:判断不同时提示的内容,预期结果,被判断的结果,精度
//       判断方式 A-B<误差值
//       精度为小数点后4位数 
	assertEquals("断言1失败原因是:",f,e,0.0001);//A-B=0/=.001 > 0.0001 所以会断言失败
//	精度为下小数点后
	assertEquals("断言2失败原因是:",f,e,0.001);

	
   }
// 判断是否为同一个对象
   @Test
   public void testAssertSame() {
       assertSame("判断是否为同一个变量断言失败1:", a,a);
       assertSame("判断是否为同一个变量断言失败2:", a,b);

   }
//    判断是否为空
   @Test
   public void testAssertNull() {
       String  g=null;
      assertNull("判断是否为空断言失败:",g);
   }
//    判断是否不为空
   @Test
   public void testAssertNotNull() {
       String  g=null;
      assertNotNull("判断是否不空断言失败:",g);
   }
   
//   判断返回值是否为True
   @Test
   public void testAssertTrue() {
       boolean flag=true;
       assertTrue("断言失败:",flag);
   
   }
   
//   判断返回值是否为False
 @Test
 public void testAssertFalse() {
     boolean flag=false;
     assertFalse("断言失败:",flag);
 }

}

5.总结

  • 断言是用来实际结果和预期结果是否相同的 "有针对性"的if判断
  • 使用断言之前要断言相关的类库 org.junt.Assert.*
  • 常用断言可以判断是否为相同变量,对象是否会为空(非空)
  • 对应浮点数 判断方式的 实际值-预期值<误差 的等式是否成立 !使用时要注意
  • 断言的使用要在测试方法中
  • 断言的第一个参数的固定的 都是 断言失败时的提示信息
  • 不同类型的断言 参数个数不同
相关推荐
Magnum Lehar2 分钟前
3d游戏引擎EngineTest的系统实现3
java·开发语言·游戏引擎
就叫飞六吧15 分钟前
Spring Security 集成指南:避免 CORS 跨域问题
java·后端·spring
Mcworld85716 分钟前
java集合
java·开发语言·windows
天黑请闭眼22 分钟前
IDEA:程序编译报错:java: Compilation failed: internal java compiler error
java·intellij-idea
苍煜1 小时前
Maven构建流程详解:如何正确管理微服务间的依赖关系-当依赖的模块更新后,我应该如何重新构建主项目
java·微服务·maven
冼紫菜1 小时前
[特殊字符]CentOS 7.6 安装 JDK 11(适配国内服务器环境)
java·linux·服务器·后端·centos
isyangli_blog2 小时前
(1-4)Java Object类、Final、注解、设计模式、抽象类、接口、内部类
java·开发语言
秋野酱3 小时前
Spring Boot 项目的计算机专业论文参考文献
java·spring boot·后端
士别三日&&当刮目相看3 小时前
数据结构*优先级队列(堆)
java·数据结构
香饽饽~、3 小时前
【第二篇】 初步解析Spring Boot
java·spring boot·后端