При написании теста junit:

internal class MyTest {
    @org.junit.jupiter.api.Nested
    class MyInnerClass {

    }
}

В моем редакторе кода (IntelliJ) отображается предупреждение

Только нестатические вложенные классы могут служить @Nested тестовыми классами.

Как написать вложенные классы в тестах junit в котлине?

0
jactor-rises 10 Фев 2021 в 13:41

1 ответ

Лучший ответ

При использовании @Nested классов в kotlin им нужен префикс inner , поскольку только внутренние классы могут использоваться как вложенные классы.

Только нестатические вложенные классы (т.е. внутренние классы) могут служить в качестве @Nested тестовых классов.

Ваш код должен выглядеть примерно так:

internal class MyTest {
    @Nested
    inner class MyInnerClass {
        @Test
        fun customTest() {
           //TODO: do something
        }
    }
}
0
Thomas Winter 13 Фев 2021 в 09:48