junit单元测试总结

junit单元测试总结

《JUnit 中常见的断言指令及示例》

第一参数都可以为提示信息

在 JUnit 测试框架中,断言指令用于验证程序的预期行为和实际行为是否一致。当断言失败时,JUnit 会抛出 AssertionError 异常,从而标记测试用例失败。下面为你介绍 TestMD.java 文件中使用到的以及其他常见的断言指令:

1. assertEquals

  1. 功能:用于比较两个值是否相等。如果这两个值不相等,测试就会失败。
  2. 语法

 

assertEquals(expected, actual);

  1. 示例

 

assertEquals(MyDateNew.maxDay(2000, 2), 29);

这里是将 MyDateNew.maxDay(2000, 2) 方法的返回值(实际值)和 29(预期值)进行比较,验证 2000 年 2 月的最大天数是否为 29。

2. assertTrue

  1. 功能:用于验证一个布尔表达式是否为 true。若表达式为 false,测试将失败。
  2. 语法

 

assertTrue(condition);

  1. 示例

 

assertTrue(MyDateNew.maxDay(2000, 13)<1);

此代码验证 MyDateNew.maxDay(2000, 13) 的返回值是否小于 1,以此检查 maxDay 方法对无效月份(13 月)的处理是否正确。

3. assertFalse

  1. 功能:用于验证一个布尔表达式是否为 false。若表达式为 true,测试会失败。
  2. 语法

 

assertFalse(condition);

  1. 示例:在 testIsLeap 方法中,有类似的使用逻辑:

 

assertFalse(MyDateNew.isLeap(1900));

该代码验证 1900 年是否不是闰年,即 MyDateNew.isLeap(1900) 的返回值是否为 false。

4. assertNull

  1. 功能:用于验证一个对象是否为 null。若对象不为 null,测试将失败。
  2. 语法

 

assertNull(object);

  1. 示例:在 testNextDate 方法中有如下使用:

 

nd = new MyDateNew(2012, 13, 31).nextDate();

assertNull(nd);

这里验证 MyDateNew(2012, 13, 31).nextDate() 的返回值是否为 null,以此检查 nextDate 方法对无效日期的处理是否正确。

5. assertNotNull

  1. 功能:用于验证一个对象是否不为 null。若对象为 null,测试会失败。
  2. 语法

 

assertNotNull(object);

6. assertSame

  1. 功能:用于验证两个对象引用是否指向同一个对象。若不是同一个对象,测试将失败。
  2. 语法

 

assertSame(expected, actual);

7. assertNotSame

  1. 功能:用于验证两个对象引用是否不指向同一个对象。若指向同一个对象,测试会失败。
  2. 语法

 

assertNotSame(expected, actual);

8. assertArrayEquals

  1. 功能:用于比较两个数组是否相等,包括数组的长度和元素值。若不相等,测试将失败。
  2. 语法

 

assertArrayEquals(expectedArray, actualArray);

这些断言指令能帮助开发者有效地编写测试用例,确保代码的正确性和稳定性。


记住做junit测试一定要写pom文件导入junit依赖

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13</version>
        <scope>test</scope>
    </dependency>
</dependencies>

然后可以在test->java里面写测试代码,不是main里的java,main里那个test目录只是名字取成test与测试没有关系

posted @ 2025-04-06 10:43  Annaprincess  阅读(78)  评论(0)    收藏  举报