目录
什么是Junit?
<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.9.3</version>
</dependency>
Junit的基础注解有哪些?
什么是参数化?参数化通过哪几种方式传输数据?
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<version>5.9.3</version>
<scope>compile</scope>
</dependency>
单参数
@ParameterizedTest
@ValueSource(ints = {1, 2, 3})
public void oneParameter(int i) {
System.out.println("oneParameter: " + i);
}
多参数
@ParameterizedTest
@CsvSource(value = {"张三,12", "李四,13", "王五,14"})
public void multipleParameter(String name, int age) {
System.out.println("csvFileParameter: " + name + "->" + age);
}
CSV文件获取参数
test.scv
张三,12
李四,13
王五,14
----------------------------------------------------------------
@ParameterizedTest
@CsvFileSource(resources = "/test.csv")
public void csvFileParameter(String name, int age) {
System.out.println("csvFileParameter: " + name + "->" + age);
}
方法获取参数
public static Stream<Arguments> methodSource() {
return Stream.of(
Arguments.of("张三", 12),
Arguments.of("李四", 13),
Arguments.of("王五", 14)
);
}
@ParameterizedTest
@MethodSource(value = "methodSource")
public void methodParameter(String name, int age) {
System.out.println("csvFileParameter: " + name + "->" + age);
}
测试用例执行顺序如何控制?
什么是断言assert?Assertions类的常用方法?
什么是测试套件?如何使用测试套件?
<!-- https://mvnrepository.com/artifact/org.junit.platform/junit-platform-suite -->
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-suite</artifactId>
<version>1.9.2</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.9.2</version>
<scope>test</scope>
</dependency>