Есть рабочие проекты отдельно с аллюром и отдельно с кукумбером:
А вместе их не пробовал.
Есть рабочие проекты отдельно с аллюром и отдельно с кукумбером:
А вместе их не пробовал.
это как раз мой случай: необходимо скрестить ёжика и питона… чтоб получить 10м колючей проволоки
Ну, может проще использовать отчёты cucumber?
А что собственно у Вас не работает?
пытался настроить cucumber-reports
но похоже сами отчёты не генерятся… и как следствие красивого отчёта тоже
имеем:
feature: с одним шагом - зайти в приложение
в Hooks - настройки запуска
в связанном DEF файле - действия во вводу логина/пароля/ нажатие логин
настройка RunCucumberTest.java
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = {“html:target/cucumber-report/RunCucumberTest”, “json:target/cucumber-reports/cucumber.json”},
features = “target/test/resources/features”.
glue = “target/test/java/steps”
)
и в build.gradle:
plugins{
id ‘java’
id ‘com.github.specialcircumstances.gradle-cucumber-reporting’ version ‘0.1.24’
}
dependencies {
…
testImpementation group: ‘com.github.specialcircumstances’, name ‘gradle-cucumber-reporting’, version ‘0.1.24’
…
}
при запуске - скрипт исполняется “на ура”
1 Scenarios (1 passed)
1 Step (1 passed)
когда из Gradle > cucumber reports - нажимаю generateCucumberReports
получаю ошибку:
Execution failed for task : ‘:generateCucumberReports’.
Cannot invoke method exists () on null object
я уже пытался через терминал запускать: ./gradlew clean test
но всё равно не помогает
если не сложно - скопируйте необходимые настройки build.gradle и TestRunner.java из вашего рабочего проекта
и поясните последовательность действий/команд…
заранее спасибо
Да, выглядит как будто просто скрипт кривой.
сам автотест - пасится без проблем выполняя всё что надо…
а вот репортинг - ни аллюр ни cucumber-report - ничего не пашет…
почему и прошу если у кого есть рабочий тест и настройка возвращающая репорт - поделитесь всеми конфигами…
У меня только без BDD был.
в том и проблема…
что никто не может дать работающий пример в заданных условиях…
а значит мне надо или сменить условия (типа переходить на мавен - селениум) … или забить на репортинг…
я почему и прошу специалистов - если у вас есть простой cucumber сценарий + java + selenide - попробуйте доснастроить cucumber-reports (или аллюр) и добиться чтоб это всё работало…
я то ещё ОЧЕНЬ!!! новичёк(по сути занимаюсь 2ю неделю), и мне крайне сложно добиться качественной настройки.
Так я так и не понял, зачем и allure и bdd? Cucumber нормальные же отчёты рисует.
если честно - я не очень понимаю что такое bdd
у меня такие компоненты: gradle + selenide + cucumber + java
мне нужен отчёт работы кукубера… один из вариантов аллюр… другой кукумбер-репорт
у меня не получилось “добиться взаимности” ни от 1го ни от 2го…
А как Вы используете cucumber, если не понимаете в чём суть? Cucumber и есть одна из реализаций BDD подхода. Ну, вот примерно обзорная статья https://www.artofba.com/post/bdd-acceptance-criteria-test
вы не поняли задачу:
у меня УЖЕ написанный тест на Cucumber-е… работающий… правильно.
сейчас задача получит “красивый” отчёт.
и в данный момент у меня проблемы с настройкой системы репортинга: ни Allure ни Cucumber-reports не удаётся настроить корректно, чтоб получить отчёт.
Так Cucumber уже предоставляет красивые отчёты. Зачем тогда allure прикручивать? Например через встроенные плагины: cucumber.plugin=pretty, html:cucumber-reports/Cucumber.html, json:cucumber-reports/Cucumber.json, junit:cucumber-reports/Cucumber.xml
я указал выше пример своего testrunner-a
результат - не создаётся ни json-a ни отчёта…
А что это за плагин?
У меня в зависимостях так, что касается cucumber:
testImplementation "io.cucumber:cucumber-java8:$cucumber"
testImplementation "io.cucumber:cucumber-junit:$cucumber"
testImplementation "io.cucumber:cucumber-junit-platform-engine:$cucumber"
$cucumber - нужная версия. У меня последняя.
Настройки отчётов я не стал вставлять в RunCucumberTest. А добавил в cucumber.properties. Или можно в junit-platform.peoperties. В зависимости от того каким способом запускать, через junit или напрямую через таску в gradle.
Если через таск, то она будет выглядеть примерно так:
configurations {
cucumberRuntime {
extendsFrom testImplementation
}
}
tasks.register('cucumber') {
dependsOn assemble, testClasses
doLast {
javaexec {
main = 'io.cucumber.core.cli.Main'
classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
args = ['--glue', 'com.tests', 'src/test/resources']
}
}
}
Запуск соответственно будет командной gradlew cucumber
.
Если использоваь стандартный запуск через junit при помощи RunCucumberTest класса то junit-platform.properties у меня выглядит вот так:
junit.jupiter.testinstance.lifecycle.default=per_class
cucumber.plugin=pretty, html:cucumber-reports/Cucumber.html, json:cucumber-reports/Cucumber.json, junit:cucumber-reports/Cucumber.xml
Ну или можно добавить как у тебя в RunCucumberTest через аннотацию, но по мне это менее удобно.
наконец-то…
настроил всё как у вас, через cucumber-properties…
и при запуске Feature сценария - получил на выходе:
что немного странно - я НЕ запускал из терминала gradlew cucumber - а он автоматом сгенерился.
спасибо большое за помощь!
Значит сработало через jinut. Рад, что помог.
а что значит настроил через cucumbe-properties?
не могу понять что за файл
Например здесь упоминается. Там можно разные параметры сохранять для кукумбера. И для отчётов и перемешки окружения и прочее.