Skip to content

应用测试

rain-test 将 JUnit 5 测试放入 Rain 的 AppClassloader 与应用上下文中运行。

添加依赖

kotlin
dependencies {
    testImplementation("com.IceCreamQAQ.Rain:rain-test:1.0.0-DEV12")
}

Rain 根项目通过自定义 TestEngine 运行测试,并排除了标准 junit-jupiter Engine。下游项目若复用同样配置,需要确保 Rain TestEngine 的服务文件在测试运行时可见。

编写测试

kotlin
@RainTest
class UserServiceTest {
    @Inject
    lateinit var userService: UserService

    @Test
    fun createsUser() {
        userService.create("Rain")
    }
}

@RainTest 的测试实例由 DI 容器创建,因此可以使用与应用相同的注入方式。未标记 @RainTest 的普通 JUnit 测试仍由标准测试路径处理。

测试配置

测试资源中同样可提供 conf/application.properties

properties
rain.scanPackages=com.example

基于 Apache License 2.0 发布