问题

Junit框架


代码
工具类
public class StringUtils {
public static int getMaxIndex(String str){
return str.length() ;
}
}
测试类
- 测试类类名:原类名+test
- 测试用例: 方法名+Test
- Assertions.assertEquals 断言机制
public class StringUtilsTest {
@Test
public void testGetMaxIndex(){
int maxIndex2 = StringUtils.getMaxIndex("hello");
Assertions.assertEquals(4, maxIndex2,"方法有bug");
}
}
效果圖

常用API
- @Test:标记一个方法为测试方法。 @BeforeEach:标记一个方法,该方法会在每个测试方法之前执行。
- @AfterEach:标记一个方法,该方法会在每个测试方法之后执行。
- @BeforeAll:标记一个静态方法,该方法会在所有测试方法之前执行。
- @AfterAll:标记一个静态方法,该方法会在所有测试方法之后执行。
- @Disabled:标记一个测试类或测试方法为禁用,即不执行该测试。
- @DisplayName:定义一个自定义的测试方法或测试类的显示名称。 @Nested:标记一个非静态内部类,用于创建分层测试。
- @RepeatedTest:表示一个测试方法应该被重复执行。 @ParameterizedTest:表示一个参数化测试。
- @Tag:用于声明自定义的测试类或测试方法的标签。 @Timeout:用于声明测试方法或所有测试方法的超时时间
- BeforeXXX 常用于初始化资源
- AfterXXX 常用于释放资源

@BeforeAll
public static void beforeAll(){
System.out.println("所有测试开始");
}
@BeforeEach
public void before(){
System.out.println("测试开始");
}
@AfterEach
public void after(){
System.out.println("测试结束");
}
@AfterAll
public static void afterAll(){
System.out.println("所有测试结束");
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24