java之junit Test

JUnit测试简介

1.什么是单元测试

  • 单元测试是针对最小的功能单元编写测试代码
  • Java程序最小的功能单元是方法
  • 单元测试就是针对单个Java方法的测试

2.测试驱动开发

3.单元测试的好处

  • 确保单个方法运行正常
  • 如果修改了方法代码,只需确保其对应的单元测试通过
  • 测试代码本身就可以作为示例代码
  • 可以自动化运行所有测试并获得报告

4.Junit的设计

  • TestCase:一个TestCase表示一个测试
  • TestSuite:一个TestSuite包含一组TestCase,表示一组测试
  • TestFixture:一个TestFixture表示一个测试环境
  • TestResult:用于收集测试结果
  • TestRunner:用于运行测试
  • TestListener:用于监听测试过程,收集测试数据
  • Assert:用于断言测试结果是否正确

总结

  • 一个TestCase包含一组相关的测试方法
  • 使用Assert断言测试结果(注意浮点数assertEquals要指定delta)
  • 每个测试方法必须完全独立
  • 测试代码必须非常简单
  • 不能为测试代码再编写测试
  • 测试需要覆盖各种输入条件,特别是边界条件
相关推荐
唐青枫12 小时前
Java SLF4J 实战指南:从日志门面到 Logback、MDC 和链路追踪
java
名字还没想好☜13 小时前
Go slice 的 append 陷阱:共享底层数组导致的数据串改
开发语言·后端·golang·go·slice
bitbrowser13 小时前
Claude 账号频繁被封?转向国内可直接使用的 AI 工具
开发语言·php
jvmind_dev13 小时前
Java GC 实战指南(番外篇):被忽视的隐形杀手 —— Class Unloading 如何拖垮 GC
java·后端
An_s13 小时前
机器学习python之识别图中物品信息
java·linux·开发语言
小雪_Snow13 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
肖爱Kun13 小时前
C++设计策略模式
开发语言·c++·策略模式
AIGS00113 小时前
跨越语义鸿沟:企业本体语义平台的构建与落地
java·人工智能·python·机器学习·人工智能ai大模型应用
灯澜忆梦14 小时前
GO_面向对象_方法
开发语言·golang
布朗克16814 小时前
Go 入门到精通-16-字符串深入
开发语言·后端·golang·字符串