单元测试
- 咱们之前是如何进行单元测试的? 有啥问题 ?
- 只能在main方法编写测试代码,去调用其他方法进行测试。
- 无法实现自动化测试,一个方法测试失败,可能影响其他方法的测试。
- 无法得到测试的报告,需要程序员自己去观察测试是否成功。

- 单元测试就是针对最小的功能单元--- ---方法,为其编写测试代码对其进行正确性测试。
Junit单元测试框架
Junit介绍
- 可以用来对方法进行测试,它是第三方公司开源出来的(很多开发工具已经集成了Junit框架,比如IDEA)
- 优点
- 可以灵活的编写测试代码,可以针对某个方法执行测试,也支持一键完成对全部方法的自动化测试,且各自独立。
- 不需要程序员去分析测试的结果,会自动生成测试报告出来。

Junit单元测试的使用步骤
-
将Junit框架的jar包导入到项目中(注意:IDEA集成了Junit框架,不需要我们自己手工导入了)
-
为需要测试的业务类,定义对应的测试类,并为每个业务方法,编写对应的测试方法(必须:公共、无参、无返回值)
-
测试方法上必须声明
@Test注解,然后在测试方法中,编写代码调用被测试的业务方法进行测试; -
开始测试:选中测试方法,右键选择"JUnit运行" ,如果测试通过则是绿色;如果测试失败,则是红色
-
代码示例:
java/** * 字符串工具类 */ public class StringUtil { public static void printNumber(String name){ if(name == null){ System.out.println("名字不能为空"); return; } System.out.println("名字长度是: " + name.length()); } /** * 求字符串的最大索引 */ public static int getMaxIndex(String data){ if(data == null || "".equals(data)) { return -1; } return data.length() -1; } }javaimport org.junit.Test; public class StringUtilTest { @Test //第一次使用, alt+enter 导入依赖, 选中 junit4 public void testPrintNumber(){ StringUtil.printNumber("程序员"); } @Test public void testGetMaxIndex(){ int index = StringUtil.getMaxIndex("abc程序员"); System.out.println("最大索引:"+index); } }
- 现在AI特别智能,也可以再编写好功能代码后直接点击生成单元测试,生成单元测试