通过JUnit5 实现测试套件的功能,需要依赖junit-platform-runner 、junit-jupiter-api和junit-jupiter-engine。
junit-platform-runner:用来执行测试用例和测试套件。
junit-jupiter-api有注解,通过@Test来写测试用例。
junit-jupiter-engine:引擎,在执行测试用例时要用到。
maven依赖如下:
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.7.0</version>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-runner</artifactId>
<version>1.7.0</version>
</dependency>
junit-jupiter包含了api和engine,见下图,当然你们也可以分开添加
下面进入正题,如何实现测试套件。
划重点:
测试类要以Test或Tests结尾,经过我的实验,其实以它们开头也可以,就是说测试类要是下面这样的:
实现测试套件用
@SelectPackages或@SelectClasses,用法如下.
@SelectPackages
执行该包下面所有的测试类(以Test或Tests结尾的类)中的测试用例。
单个包
@RunWith(JUnitPlatform.class)
@SelectPackages("junit5.examples.packageA")
public class JUnit5TestSuiteExample
{
}
多个包
@RunWith(JUnitPlatform.class)
@SelectPackages({"junit5.examples.packageA","junit5.examples.packageB"})
public class JUnit5TestSuiteExample
{
}
@SelectClasses
@RunWith(JUnitPlatform.class)
@SelectClasses( ClassATest.class )
public class JUnit5TestSuiteExample
{
}
@RunWith(JUnitPlatform.class)
@SelectClasses( { ClassATest.class, ClassBTest.class, ClassCTest.class } )
public class JUnit5TestSuiteExample
{
}
引入的类如下:
import org.junit.platform.runner.JUnitPlatform;
import org.junit.platform.suite.api.SelectClasses;
import org.junit.platform.suite.api.SelectPackages;
import org.junit.runner.RunWith;
还有一些其他一些注解如@IncludePackages and @ExcludePackages,就不再细说了
版权声明:本文为weixin_42258032原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。