Я пытаюсь использовать проект Java, Serenity-BDD с Gradle версии 4.8+, но приложение не получает аргументы CLI -Denvironment и -Dservicebranches.У меня есть эти свойства как пустые значения в моем файле local.properties, и они не получают назначения при запуске моего приложения.
- . / Gradlew --build-cache build -Dwebdriver.remote.url = $ {SELENIUM_REMOTE_URL} -Denvironment = $ {ENVIRONMENT} -Dservicebranches = $ {SERVICE_BRANCHES} -Dtags = $ {TAGS}
У меня есть файл local.properties со свойствамикоторые успешно внедряются в проект (через Serenity-Spring).Я надеюсь, что эти аргументы CLI переопределят эти значения:
servicebranches=
environment=local
Но сейчас все, что указано в аргументах CLI, не передается в проект.Либо через DI, либо через явный захват переменных окружения в build.gradle, что я не пытался сработать.
Вот несколько вещей, которые я попробовал в build.gradle:
//task integrationTests() {
// doFirst
// {
// def environment = System.getProperty('environment')
// def servicebranches = System.getProperty('servicebranches')
// }
// tasks.build.execute()
//}
//integrationTests.dependsOn(build)
//build.doFirst{
// systemProperties System.properties
// def environment = System.properties['environment']
// environment = environment //This actually flags with 'Silly assignment'
//}
build.doFirst{
def environment = System.getProperty('environment')
def servicebranches = System.getProperty('servicebranches')
}
В последнем, кажется, все еще отсутствует шаг, потому что программа все еще работает, но аргументы все еще не проходят.Я даже пытался -Denvironment = potato, и никаких ошибок не возникало, потому что у меня нет файла свойств или свойств с таким именем.
Я также пытался использовать тег -P вместо тега -D, но это, похоже, тоже не работает.
Все, что я пытаюсь сделать, это использовать build.gradle для использования System.getProperty ('environment') и System.getProperty ('servicebranches') доЯ использую уже созданную задачу «сборки», которая поставляется с Serenity.Как бы я это сделал?Собрать ли мне новую задачу, где я использую эти getProperties, и затем вызвать задачу сборки?Нужно ли указывать назначение этих одноименных переменных в файле local.properties?