IncompatibleClassChangeError запуск тестов Cucumber в IntelliJ
когда я запускаю тестовую функцию cucumber в IntelliJ, все, что он показывает, это несовместимость с трассировкой стека:
Testing started at 12:55 ...
/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home/bin/java ...
Exception in thread "main" java.lang.IncompatibleClassChangeError: Found interface cucumber.api.TestCase, but class was expected
at org.jetbrains.plugins.cucumber.java.run.CucumberJvm2SMFormatter.handleTestCaseStarted(CucumberJvm2SMFormatter.java:80)
at org.jetbrains.plugins.cucumber.java.run.CucumberJvm2SMFormatter.access0(CucumberJvm2SMFormatter.java:17)
at org.jetbrains.plugins.cucumber.java.run.CucumberJvm2SMFormatter.receive(CucumberJvm2SMFormatter.java:32)
at org.jetbrains.plugins.cucumber.java.run.CucumberJvm2SMFormatter.receive(CucumberJvm2SMFormatter.java:30)
at cucumber.runner.EventBus.send(EventBus.java:28)
at cucumber.runner.TestCase.run(TestCase.java:37)
at cucumber.runner.Runner.runPickle(Runner.java:44)
at cucumber.runtime.Runtime.runFeature(Runtime.java:120)
at cucumber.runtime.Runtime.run(Runtime.java:106)
at cucumber.api.cli.Main.run(Main.java:35)
at cucumber.api.cli.Main.main(Main.java:18)
Process finished with exit code 1
Empty test suite.
Это IntelliJ IDEA 2018.1.4 (Ultimate Edition), Build #IU-181.5087.20
С Cucumber for Java version 181.5087.20
2 ответов
плагин не совместим (пока) с cucumber java версии 3 и выше.
вы должны обновить вашу сборку.gradle для явного указания версии 2:
dependencies {
...
testCompile 'io.cucumber:cucumber-java8:2.+'
}
Как поясняется в вопрос #1392
это вызвано CucumberJvm2SMFormatter идеи. Это форматер для Cucumber2, сталкивается с разрывным изменением в огурце 3.
самым простым решением является удаление --plugin org.jetbrains.plugins.cucumber.java.run.CucumberJvm2SMFormatter
из аргументов программы в конфигурации запуска.