本节主要包含的主题是运行JUnit5测试用例
IDE运行
我主要用到的集成开发环境是Intellij和VSCode
Intellij
新版的Intellij可以直接运行JUnit5
VSCode
需要安装Java Test Runner插件
构建支持
构建工具我通常使用Maven,这里需要注意的是对JUnit的配置相关
过滤
在执行mvn test
命令时过滤出我们想要执行的测试。
通过@Tag过滤
1 2 3 4 5 6 7 8 9 10 11 12
| <build> <plugins> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.0</version> <configuration> <groups>acceptance | !feature-a</groups> <excludedGroups>integration, regression</excludedGroups> </configuration> </plugin> </plugins> </build>
|
groups中填写tag组合的表达式,指定过滤规则
通过类名进行过滤
1 2 3 4 5 6 7 8 9 10 11 12 13
| <build> <plugins> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.0</version> <configuration> <excludes> <exclude/> </excludes> </configuration> </plugin> </plugins> </build>
|
类名过滤的写法
*/Test.java
*/Test.java
*/Tests.java
*/TestCase.java
参数配置
前面提过并行测试,里面西药配置JUnit参数,一种配置方式就在pom中设置
1 2 3 4 5 6 7 8 9 10 11 12 13
| <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.0</version> <configuration> <properties> <configurationParameters> junit.jupiter.conditions.deactivate = * junit.jupiter.extensions.autodetection.enabled = true junit.jupiter.testinstance.lifecycle.default = per_class </configurationParameters> </properties> </configuration> </plugin>
|
Tag表达式
Tag表达式前面提到了用来编写过滤规则,这个比较简单,下面是来自文档的截图
范例
捕捉标准/错误输出
略过