📅  最后修改于: 2023-12-03 14:43:37.179000             🧑  作者: Mango
JUnit是Java编程语言的单元测试框架之一。它由Kent Beck和Erich Gamma创建,并在Apache许可证下发布。JUnit是JUnit软件基金会(Software Freedom Conservancy)的一部分。JUnit4是最新的版本,它可用于Java 5.0及更高版本。本教程将通过示例和练习介绍JUnit4的特点和用法。
要使用JUnit,需将其添加到Java项目中。最简单的方法是使用Build Tool(例如Maven或Gradle),使用以下依赖项:
<!-- JUnit 4.12 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
或者,如果您想手动安装JUnit4,可以从http://junit.org下载JAR文件并将其导入项目。
测试用例类是JUnit测试的基本单元,可使用@Test注释标记要测试的方法。例如:
import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class MyTest {
@Test
public void testAdd() {
String str= "JUnit is working fine";
assertEquals("JUnit is working fine",str);
}
}
您可以执行此测试方法并检查结果是否为“通过”。
JUnit使用断言(Assertions)来验证代码是否按预期工作。检查是否等于,检查数组是否相等,检查null等示例:
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class MyTest {
String message = "Hello World";
MessageUtil messageUtil = new MessageUtil(message);
@Test
public void testPrintMessage() {
assertEquals(message,messageUtil.printMessage());
}
@Test
public void testBoolean() {
assertTrue(messageUtil.isTrue());
}
@Test
public void testArray() {
int[] arr = {1,2,3};
assertArrayEquals(arr, arr);
}
}
在JUnit中,每个测试方法默认以随机顺序运行。但可能需要控制测试方法的顺序。为此,可以使用@FixMethodOrder注释,它接受一个枚举类型:MethodSorters。
import org.junit.Test;
import org.junit.runners.MethodSorters;
import org.junit.FixMethodOrder;
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class MyTest {
@Test
public void testB() {
System.out.println("B");
}
@Test
public void testA() {
System.out.println("A");
}
@Test
public void testC() {
System.out.println("C");
}
}
在上面的示例中,测试B将在A和C之前运行。
JUnit是一种非常流行的Java单元测试框架,它已成为Java开发人员测试代码的必要工具之一。框架可用于测试基于Java编程语言编写的所有应用程序。 使用本教程中的信息,您应该能够开始使用JUnit并为项目编写测试用例。