Ошибка при запуске Junit - java.lang.NoClassDefFoundError: gherkin / IGherkinDialectProvider

Я пытаюсь создать фреймворк с использованием селена WD с огурцом и Junit. Я установил / загрузил все, но при запуске столкнулся с проблемой.

Я получаю следующую ошибку при попытке выполнить класс JUNIT. Кто-нибудь сталкивался с такой же проблемой, и как вы могли ее исправить, пожалуйста?

Используемые версии Jar-файлов:

• Cucumber-core 4.4.0 • Cucumber-html 4.4.0 • Покрытие кода cobertura 2.1.1 • Cucumber-java 4.4.0 • Cucumber-junit 4.4.0 • Cucumber-jvm-deps 1.0.6 • Gherkin 6.0.17 • Юнит 4.12

Трассировка ошибки: java.lang.NoClassDefFoundError: gherkin / IGherkinDialectProvider


person Navya    schedule 05.07.2019    source источник
comment
Вы добавили зависимость Gherkins? Насколько я знаю, это происходит автоматически как часть зависимости от Cucumber.   -  person Neha    schedule 05.07.2019
comment
Нет, я использовал огурец-jvm-deps   -  person Navya    schedule 05.07.2019


Ответы (1)


Это означает, что вы используете неправильную комбинацию банок. (Afaik Cucumber-jvm v4 не использует Gherkin 6.)

Обратите внимание, что Cucumber рекомендует использовать диспетчер пакетов (Maven или Gradle), чтобы предотвратить эту проблему и убедиться, что вы получаете правильные транзитивные зависимости.

Ознакомьтесь с инструкциями по установке в документации Cucumber, чтобы узнать, какие зависимости вам нужны.

Для Maven:

If you are going to use the lambda expressions API (Java 8) to write the step definitions, 
add the following dependency to your pom.xml:

<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-java8</artifactId>
    <version>4.3.1</version>
    <scope>test</scope>
</dependency>

Otherwise, to write them using annotated methods, 
add the following dependency to your pom.xml:

<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>4.3.1</version>
    <scope>test</scope>
</dependency>

person Marit    schedule 11.07.2019