Используя Maven всякий раз, когда я пытаюсь запустить свой файл функций в eclipse, я получаю ошибку ниже:
Исключение в потоке «main» java.lang.IllegalArgumentException: Не файл или каталог: G: \ Codebase \ MavenCucumber - плагин в cucumber.runtime.io.FileResourceIterator $ FileIterator. (FileResourceIterator.java:54) в cucumber.runtime. io.FileResourceIterator. (FileResourceIterator.java:20) в cucumber.runtime.io.FileResourceIterable.iterator (FileResourceIterable.java:19) в cucumber.runtime.model.CucumberFeature.load (CucumberFeature.cumber:38) attime. RuntimeOptions.cucumberFeatures (RuntimeOptions.java:117) в cucumber.runtime.Runtime.run (Runtime.java:92) в cucumber.api.cli.Main.run (Main.java:20) в cucumber.api.cli.Main .main (Main.java:12)
Приведенное выше изображение представляет собой структуру моего проекта, а файл функций содержит код ниже:
@tag
Feature: Proof of Concept
@tag1
Scenario: This is my first test Scenerio
Given This is my first step
When This is my second step
Then This is my third step
6 ответов
Я использовал банку версии 1.1.2 для огурца-явы, огурца-джунита, огурца-пикоконтейнера. Из-за этого я получил указанную выше ошибку.
Теперь я использую jar версии 1.2.2, и она отлично работает с этой версией.
На самом деле проблема возникла со мной, потому что имя файла функции было написано в верхнем регистре. Когда я изменил его на нижний регистр, проблема была решена.
Ниже формат параметров огурца работал для меня
src\\main\\java\\com.qa.features
com.qa.stepDefinition
@RunWith(Cucumber.class)
@CucumberOptions(
features = "src\\main\\java\\com\\qa\\features"
,glue={"com/qa/stepDefinition"}
,format={"pretty","html:test-output"}
}
В этой ошибке четко указано, что «Не файл или каталог», что означает, что путь неверен. Для этого может быть несколько причин.
Один из них - это обновление библиотек Cucumple до последней версии, которая работала в вашем случае.
Во-вторых, это размещение файлов функций. Я предполагаю, что файлы функций могут быть только в двух местах:
- В папке src или подпапках src.
- Вне папки src, что означает, что вы храните свои файлы функций в какой-либо папке в проекте, но вне пакета src.
В первом случае вы должны указать свои CucumberOptions, как показано ниже:
@RunWith(Cucumber.class)
@CucumberOptions(
features = "src/somefolder/Feature"
Во втором случае:
@RunWith(Cucumber.class)
@CucumberOptions(
features = "Feature")
Посмотрите на пример второго случая здесь http://toolsqa.com/cucumber / first-cucumber-selenium-java-test /
Пытаться
mvn test -Dcucumber.options="--tags @TagName"
Проблема была решена путем создания отдельной папки, то есть «Feature» в проекте, вместо того, чтобы хранить файл функции в подпапке проекта.
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.