当前位置: 首页 > java >正文

Java单元测试

文章目录

  • 概述、Junit框架快速入门
  • Junit框架的常见注解

概述、Junit框架快速入门

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
**StringUtil **

/*** 字符串工具类*/
public class StringUtil {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() - 1;}
}

**StringUtilTest **

/*** 测试类*/
public class StringUtilTest {@Test // 测试方法public void testPrintNumber(){StringUtil.printNumber("admin");StringUtil.printNumber(null);}@Test // 测试方法public void testGetMaxIndex(){int index1 = StringUtil.getMaxIndex(null);System.out.println(index1);int index2 = StringUtil.getMaxIndex("admin");System.out.println(index2);// 断言机制:程序员可以通过预测业务方法的结果。Assert.assertEquals("方法内部有bug!", 4, index2);}
}

在这里插入图片描述

Junit框架的常见注解

在这里插入图片描述
**StringUtil **

/*** 字符串工具类*/
public class StringUtil {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() - 1;}
}

**StringUtilTest **

/*** 测试类*/
public class StringUtilTest {@Beforepublic void test1(){System.out.println("---> test1 Before 执行了---------");}@BeforeClasspublic static void test11(){System.out.println("---> test11 BeforeClass 执行了---------");}@Afterpublic void test2(){System.out.println("---> test2 After 执行了---------");}@AfterClasspublic static void test22(){System.out.println("---> test22 AfterClass 执行了---------");}@Test // 测试方法public void testPrintNumber(){StringUtil.printNumber("admin");StringUtil.printNumber(null);}@Test // 测试方法public void testGetMaxIndex(){int index1 = StringUtil.getMaxIndex(null);System.out.println(index1);int index2 = StringUtil.getMaxIndex("admin");System.out.println(index2);// 断言机制:程序员可以通过预测业务方法的结果。Assert.assertEquals("方法内部有bug!", 4, index2);}
}

在这里插入图片描述

http://www.xdnf.cn/news/13927.html

相关文章:

  • 【走进Golang】测试SDK环境搭建成功,配置path环境变量
  • 深入剖析AI大模型:Prompt 开发工具与Python API 调用与技术融合
  • idea中导入maven项目的方法
  • AWS S3:云存储的“超级基石”
  • Coze扣子 - AI生成数字人口播视频
  • freeswitch使用hiredis的limit功能
  • <8>-MySQL复合查询
  • java发送excel附件的邮件
  • 计算机视觉与深度学习 | 2024年至2025年图像匹配算法总结(原理,公式,代码,开源链接)
  • 【白雪讲堂】当前GEO是否能追溯数据源?
  • 6.13 note | 二分查找
  • 基于大模型预测单纯性孔源性视网膜脱离的技术方案
  • 轻量级密码算法PRESENT的C语言实现(无第三方库)
  • 基于RK3588,飞凌教育品牌推出嵌入式人工智能实验箱EDU-AIoT ELF 2
  • C语言多进程TCP服务器与客户端
  • 【论文阅读笔记】CVPR2025 | 2D高斯溅射的几何-光照解耦:Ref-GS实现开放世界级真实渲染
  • Java 实现 Excel 转化为 PDF
  • OceanBase (DBA)一面面经
  • DMC-E 系列总线控制卡----雷赛板卡介绍(六)
  • 使用 ollama 在 mac 本地部署一个 qwen3:8b 模型
  • 26考研 | 王道 | 计算机组成原理 | 六、总线
  • 传统企业数字化转型:以定制开发开源 AI 智能名片 S2B2C 商城小程序源码为核心的销售环节突破
  • Python爬虫实战:研究gearman相关技术
  • 计算机视觉与深度学习 | 低照度图像增强算法综述(开源链接,原理,公式,代码)
  • Spring Boot常用依赖大全:从入门到精通
  • Ecc option开启后报错解决(植入实际程序后)
  • 【递归、搜索与回溯】FloodFill算法(二)
  • 泰国零售巨头 CJ Express 借助 SAP 内存数据库实现高效数据管理
  • 从SQL Server到分布式大数据平台:重构企业数据架构
  • navicat可视化页面直接修改数据库密码——mysql、postgresql、mangodb等