У меня есть проект с огурцом и мавеном. Я могу успешно запустить и построить свой проект из Intellij IDEA. И я могу запустить проект из командной строки, используя: mvn clean test -Dcucumber.options="src/test/resources/features --tags @TEST2"
Теперь мне нужно этот проект из командной строки на другом компьютере, на котором не установлена IDEA или огурец. У меня есть идея, что мне нужно создать JAR-файл и запустить именно его из командной строки.
CucumberTest. java сам по себе:
@RunWith(Cucumber.class)
@CucumberOptions(
monochrome = true,
glue = {"ru.ab.cd.stepDefs", "ru.abcd.tag.stepdefs"},
features = {"src/test/resources/features/"},
tags = {"@TEST1"},
plugin = {"pretty", "html:target/cucumber-html-report"}
)
public class CucumberTest {
}
TestRunner. java, который запускает CucumberTest. java. Я сделал этот класс специально для возможности запуска из командной строки. Я хотел передать значение для arguments
из командной строки. Но я все еще не понимаю, какие значения должны быть переданы, и пытаюсь выяснить, передав testArguments
.
public class TestRunner{
public static void main(String[] args) throws Throwable {
String[] testArguments = {"/BitBucketProjects/abc/src/test/resources/features/smoke/TEST2.feature"};
cucumber.api.cli.Main.main(testArguments);
}
}
Результат при запуске TestRunner. java. Сам тест не начался. Все шаги определены, если я запускаю один и тот же тест через CucumberTest. java, все успешно.
UUUUUUU
1 Scenarios (1 undefined)
7 Steps (7 undefined)
0m0,014s
You can implement missing steps with the snippets below:
@Допустим("^пользователь переходит на страницу авторизации$")
public void пользователь_переходит_на_страницу_авторизации() {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
@Допустим("^пользователь находится на странице \"([^\"]*)\"$")
public void пользователь_находится_на_странице(String arg1) {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
@Допустим("^пользователь загружает тестовые данные из json-файла$")
public void пользователь_загружает_тестовые_данные_из_json_файла() {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
@Допустим("^пользователь авторизуется с ролью \"([^\"]*)\"$")
public void пользователь_авторизуется_с_ролью(String arg1) {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
@Допустим("^ПРОВЕРКА\\. Ссылка \"([^\"]*)\" отображается на текущей странице$")
public void проверка_Ссылка_отображается_на_текущей_странице(String arg1) {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
@Допустим("^ПРОВЕРКА\\. Таблица \"([^\"]*)\" отображается на текущей странице$")
public void проверка_Таблица_отображается_на_текущей_странице(String arg1) {
// Write code here that turns the phrase above into concrete actions
throw new PendingException();
}
Process finished with exit code 0
Help!
- Какие параметры я должен передать A для запуска теста?
- Мне нужно использовать теги в качестве параметров. Как это сделать?