Search code examples
mavencucumber-jvmallure

allure 2 cucumber JVM adapter and Cucumber 2 seem to be incompatible


I'm trying to use Cucumber JVM 2 in conjunction with Allure 2 and I'm facing a trouble. When I try to run my Maven project - below error shows up:

cucumber.runtime.CucumberException: Couldn't load plugin class: 
io.qameta.allure.cucumberjvm.AllureCucumberJvm. It does not implement 
cucumber.api.Plugin

I'm trying to specify Allure plugin using CucumberOptions like so:

@RunWith(Cucumber.class)
@CucumberOptions
(                 
  features="src/test/resources/com/ss/cuketest/features/SomeFeature.feature"
        ,   glue="com/ss/cuketest/steps"
        ,   plugin= {"io.qameta.allure.cucumberjvm.AllureCucumberJvm"}
)
public class SomeRunner {

}

AllureCucumberJvm declaration looks like below:

public class AllureCucumberJvm implements Reporter, Formatter

So the question is if the Allure's 2 Cucumber JVM adapter is compatible with Cucumber JVM 2? Or may be I should use something else?

PS: in my pom I use below dependencies:

<dependency>
            <groupId>io.qameta.allure</groupId>
            <artifactId>allure-cucumber-jvm</artifactId>
            <version>2.0-BETA21</version>
</dependency>

<dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-spring</artifactId>
            <version>2.3.1</version>
            <scope>test</scope>
</dependency>
<dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-java</artifactId>
            <version>2.3.1</version>
</dependency>
<dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-junit</artifactId>
            <version>2.3.1</version>
</dependency>

Any help is highly appreciated. Thanks.


Solution

  • Have you tried this https://github.com/allure-framework/allure-java/tree/master/allure-cucumber2-jvm ? This is adaptive for cucumber-jvm2