JAVA—单元测试

单元测试:就是针对最小的功能单元(方法),编写测试代码对其进行正确性测试

之前是使用main函数调用来进行检测,无法实现自动化测试 也会影响其他方法的测试

目录

1.junit框架概述

2.junit框架的常见注解


1.junit框架概述

java 复制代码
package High_junit;
//字符串工具类 用于测试
public class String_junit {
   public static void printNumber(String name){
       if(name == null){
           System.out.println(0);
           return;
       }
       System.out.println("名字的长度为" + name.length());
   }

   public static int getMaxIndex(String data){
       if(data == null){return -1;}
       return data.length();
   }

}
java 复制代码
package High_junit;

import org.junit.Test;

/*测试类*/
public class String_junitText {
    @Test
    public void textPrintNumber(){
       String_junit.printNumber("admin");
       String_junit.printNumber(null);
    }

}

2.junit框架的常见注解

java 复制代码
package High_junit;

import org.junit.*;

/*测试类*/
public class String_junitText {
    @Test
    public void textPrintNumber(){
       String_junit.printNumber("admin");
       String_junit.printNumber(null);
    }

    @Test
    public void textGetMaxIndex(){
        int index  = String_junit.getMaxIndex("admin");
        System.out.println(index);
        System.out.println(String_junit.getMaxIndex(null));

        //断言机制 预测业务方法的结果
        Assert.assertEquals("方法内部有bug",4,index);
    }
    
    @After
    public void text1(){
        System.out.println("text_After执行了");
    }
    
    @Before
    public void text2(){
        System.out.println("text_Before执行了");
    }
    
    @AfterClass
    public static void text3(){
        System.out.println("AfterClass执行了");
    }
    
    @BeforeClass
    public static void text4(){
        System.out.println("BeforeClass执行了");
    }
}

学习时间:2024.9.5

相关推荐
阿维的博客日记1 小时前
Hippo4j 线程池监控平台部署手册
java·spring boot·后端
C+++Python3 小时前
详细介绍一下Java泛型的通配符
java·windows·python
JosieBook4 小时前
【数据库】时序预测能力的分级进化:TimechoAI如何让每一类用户都能精准预见未来
java·开发语言·数据库
一生了无挂5 小时前
Java处理JSON技巧教学(从基础到高阶实战全覆盖)
java·开发语言·json
李白的天不白5 小时前
使用 SmartAdmin 进行前后端开发
java·前端
swordbob5 小时前
Spring 单例 Bean 是线程安全的吗?
java·开发语言
2601_951643776 小时前
Python第一,Java跌出前三,C语言杀回来了
java·c语言·python·编程语言排行·技术趋势
IT 行者8 小时前
GitHub Spec Kit 实战(五):/speckit.tasks 怎么拆——Spec Kit 五部曲收官
java·ai编程·claude
(Charon)8 小时前
【C++ 面试高频基础:指针、引用、const、static、new/delete 总结】
java·开发语言
Yeats_Liao9 小时前
Feed流系统设计(三):数据模型与存储设计,从表结构到Redis收件箱
java·javascript·redis