gpt4 book ai didi

gradle - 运行gradle测试时找不到嵌套Kotlin类中的JUnit测试

转载 作者:行者123 更新时间:2023-12-04 10:06:45 25 4
gpt4 key购买 nike

当我在Kotlin的嵌套类中指定测试时,如下所示...

import org.junit.jupiter.api.*

class ParentTest
{
@Nested
class NestedTest
{
@Test
fun NotFoundTest() {}
}

@Test
fun FoundTest() {}
}

...使用gradle运行测试时,JUnit无法识别它。仅找到 FoundTest并运行。

我正在使用JUnit 5.1和Kotlin 1.2.30和Gradle 4.6。

最佳答案

将嵌套类定义为an inner class可解决此问题。

class ParentTest
{
@Nested
inner class NestedTest
{
@Test
fun InnerTestFound() {}
}

@Test
fun FoundTest() {}
}

作为 Sam Brannen indicates,“默认情况下,Kotlin中的嵌套类类似于Java中的 static类”和 the JUnit documentation indicates:

Only non-static nested classes (i.e. inner classes) can serve as @Nested test classes.



在Kotlin中将类标记为 inner会编译为非静态Java类。

关于gradle - 运行gradle测试时找不到嵌套Kotlin类中的JUnit测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49180845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com