'Gradle огурец' с testImplementation не работает - PullRequest
0 голосов
/ 11 декабря 2018

Я создаю простое тестовое приложение, которое использует огурец.К сожалению, gradle cucumber 'выдает ошибки, когда я пытаюсь его запустить.Однако все работает нормально, когда я меняю testImplement на устаревший testCompile в build.gradle.Это ожидаемое поведение?Что мне нужно сделать, чтобы запустить огурец с помощью testImplementation?

build.gradle:

dependencies {
    testImplementation 'io.cucumber:cucumber-java:4.2.0'
    testImplementation 'io.cucumber:cucumber-junit:4.2.0'
}

configurations {
    cucumberRuntime {
        extendsFrom testRuntime
    }
}

task cucumber() {
    dependsOn assemble, compileTestJava
    doLast {
        javaexec {
            main = "cucumber.api.cli.Main"
            classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
            args = ['--plugin', 'pretty', '--glue', 'gradle.cucumber', 'src/test/resources']
        }
    }
}

Результат (ошибка):

> Task :cucumber FAILED
Error: Could not find or load main class cucumber.api.cli.Main
Caused by: java.lang.ClassNotFoundException: cucumber.api.cli.Main

build.gradle:

dependencies {
    testCompile 'io.cucumber:cucumber-java:4.2.0'
    testCompile 'io.cucumber:cucumber-junit:4.2.0'
}
...

Результат (Работы):

> Task :cucumber
No features found at [src/test/resources]

0 Scenarios
0 Steps

Может кто-нибудь объяснить, что здесь происходит?Любая помощь с благодарностью!

1 Ответ

0 голосов
/ 11 декабря 2018

См. здесь , который говорит, что testRuntime устарела

Конфигурации compile, testCompile, runtime и testRuntime, унаследованные от плагина Java, все еще доступны, но устарели

Я думаю, это должно быть

configurations {
    cucumberRuntime {
        extendsFrom testImplementation
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...