Есть следующая проблема: Необходимо настроить возможность в билде запускать тесты по одному/выбрав несколько конкретных.
На старом jenkins это было настроено с помощью плагина Extended Choice Parameter plugin и groovy скриптом
def testsNamesFile = new
File("${System.getenv().get("JENKINS_HOME")}/workspace").listFiles().find {
dir -> dir.name == binding.currentProject.name
}.listFiles().find {
file -> file.name == "tests_names.txt"
}
if (testsNamesFile == null || !testsNamesFile.exists()) {
return []
}
def checkboxesValues = []
def checkboxesDescriptions = []
/*
when you save a semicolon in an array, the script displays it out as
different values
therefore replaceAll(",", "`")
*/
testsNamesFile.readLines().sort().each { l ->
def line = l.trim().replaceAll(",", "`")
def sepIdx = line.indexOf("__")
if (sepIdx != -1) {
checkboxesDescriptions.add(line.substring(0, sepIdx))
checkboxesValues.add(line.substring(sepIdx + 2))
}
}
def checkboxEnv = binding.getProperty("checkbox")
if (checkboxEnv != null && checkboxEnv == "value") {
return checkboxesValues
} else if (checkboxEnv != null && checkboxEnv == "description") {
return checkboxesDescriptions
} else {
return []
}
И при параметризованной сборке, можно было выбрать четбоксами нужные тесты. Это реализовали разработчики на аутсорсе, сейчас появилась необходимость переехать на новый jenkins, но на нем скрипт не отрабатывает и четбоксы не появляются в сборке.
Есть способ заставить это работать, или каким либо ещё способом реализовать возможность выбора конкретных тестов?
Используем jenkins + Junit + Ant
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости