首页 > 解决方案 > 黄瓜配 Micronaut

问题描述

我正在尝试将 Cucumber 与 Micronaut 一起使用,但当我尝试将 Cucumber 与 Cucumber 一起使用时,@MicronautTest 注释根本不起作用(未注入 Apple - 请参见下面的代码)。如果我在没有 Cucumber 的情况下运行它就可以了。你有这方面的经验吗?它应该工作吗?

谢谢伊万

这些是类

第一类

import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.runner.RunWith;

@RunWith(Cucumber.class)
@CucumberOptions(plugin = { "pretty" },
        features = "src/test/resources"
)
public class TheRunner {
}

类2

import io.cucumber.java.en.Given;
import io.cucumber.java.en.Then;
import io.cucumber.java.en.When;
import io.micronaut.context.annotation.Value;
import io.micronaut.test.annotation.MicronautTest;
import org.junit.jupiter.api.Test;

@MicronautTest
public class Steps {

    @Value("apple")
    private String theApple;

//  @Test
//  public void test() {
//     System.out.println("Value: " + theApple);
//  }

    @Given("some text")
    public void some_method_1() {
        System.out.println("Value: " + theApple);
    }

    @When("some text")
    public void some_method_2() {
    }

    @Then("an alarm is raised")
    public void some_method_3() {
    }

}

构建.gradle

dependencies {
    annotationProcessor platform("io.micronaut:micronaut-bom:$micronautVersion")
    annotationProcessor "io.micronaut:micronaut-inject-java"
    annotationProcessor "io.micronaut:micronaut-validation"
    implementation platform("io.micronaut:micronaut-bom:$micronautVersion")
    implementation "io.micronaut:micronaut-inject"
    implementation "io.micronaut:micronaut-validation"
    implementation "io.micronaut:micronaut-runtime"
    implementation "javax.annotation:javax.annotation-api"
    implementation "io.micronaut:micronaut-http-client"
    runtimeOnly "ch.qos.logback:logback-classic:1.2.3"
    testAnnotationProcessor platform("io.micronaut:micronaut-bom:$micronautVersion")
    testAnnotationProcessor "io.micronaut:micronaut-inject-java"
    testImplementation platform("io.micronaut:micronaut-bom:$micronautVersion")
    testImplementation "io.micronaut.test:micronaut-test-junit5"
    testImplementation "org.junit.jupiter:junit-jupiter-api:${junitVersion}"
    testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${junitVersion}"
    testRuntimeOnly "org.junit.vintage:junit-vintage-engine:${junitVersion}"
    testImplementation "io.cucumber:cucumber-java:$cucumberVersion"
    testImplementation "io.cucumber:cucumber-junit:$cucumberVersion"
}

标签: javacucumbermicronaut

解决方案


推荐阅读