Класс бегуна огурца, инициализированный с ошибкой после обновления с огурца 4.2.3 до 5.1.3 - PullRequest
1 голос
/ 07 февраля 2020

Я недавно обновил свой проект автоматизации тестирования с огурца 4.2.3 до 5.1.3. Когда 4.2.3 тесты работали нормально (параллельно). Однако, как только я обновился до 5.1.3. Класс runner инициализирован с ошибкой.

[ERROR] initializationError(com.my.project.CukeTest)  Time elapsed: 0.008 s  <<< ERROR!
java.lang.NoClassDefFoundError: cucumber/api/event/ConcurrentEventListener
Caused by: java.lang.ClassNotFoundException: cucumber.api.event.ConcurrentEventListene

Ниже приведен мой класс runner.

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

@RunWith(Cucumber.class)
@CucumberOptions(
    features = {"src/test/resources/features"},
    plugin = {
      "pretty",
      "html:target/cucumber-html-report",
      "json:target/cucumber/cucumber.json",
      "junit:target/cucumber/cucumber.xml",
      "io.qameta.allure.cucumber4jvm.AllureCucumber4Jvm",
      "rerun:target/rerun.txt"
    },
    glue = {"com.my.project.steps", "com.my.project.hook"},
    monochrome = true
    )
public class CukeTest {} 

Как вы можете видеть, прямого вызова ConcurrentEventListener в классе Runner нет. Я знаю, что начиная с 4.7.x или 4.8.x импорт значительно изменился. Я уже обновил этот импорт.

Любые входные данные будут приветствоваться. Заранее спасибо.

зависимостей, которые я использовал.

<cucumber.version>5.1.3</cucumber.version>

        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-junit</artifactId>
            <version>${cucumber.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-core</artifactId>
            <version>${cucumber.version}</version>
        </dependency>

        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-java8</artifactId>
            <version>${cucumber.version}</version>
        </dependency>

        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-spring</artifactId>
            <version>${cucumber.version}</version>
        </dependency>

1 Ответ

1 голос
/ 07 февраля 2020

Вы используете плагин io.qameta.allure.cucumber4jvm.AllureCucumber4Jvm. Этот плагин не совместим с v5.

...