IntelliJ运行带有@Ignore注释的Kotlin测试

时间:2019-02-25 22:38:33

标签: java maven intellij-idea kotlin junit5

我有一个使用JUnit 5.2.0的Kotlin项目。当我使用IntelliJ运行测试时,它会运行所有测试,甚至包括那些用@org.junit.Ignore注释的测试。

package my.package

import org.junit.Ignore
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test

class ExampleTests {

    @Test fun runMe() {
        assertEquals(1, 1)
    }

    @Test @Ignore fun dontRunMe() {
        assertEquals(1, 0)
    }
}

IntelliJ Test Runner

有人可以向我解释为什么会这样吗?

2 个答案:

答案 0 :(得分:4)

在JUnit 5中,您需要为此使用@Disabled注释。

答案 1 :(得分:1)

找出答案:JUnit5用@Ignore替换了JUnit4的@Disabled

import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test

class ExampleTests {

    @Test fun runMe() {
        assertEquals(1, 1)
    }

    @Test @Disabled fun dontRunMe() {
        assertEquals(1, 0)
    }
}

IDEA test runner

相关问题