1
0

Bdd step unstable (#3)

Шаг BDD помечается как Unstable в случае ошибок в сценариях
This commit is contained in:
Ivan Smirnov
2024-05-02 22:48:42 +03:00
committed by GitHub
parent 835873fc12
commit a8ed25b5de
3 changed files with 22 additions and 7 deletions

View File

@@ -70,6 +70,8 @@ interface IStepExecutor {
def unstash(String name) def unstash(String name)
def unstable(String message)
def zip(String dir, String zipFile) def zip(String dir, String zipFile)
def zip(String dir, String zipFile, String glob) def zip(String dir, String zipFile, String glob)

View File

@@ -154,6 +154,11 @@ class StepExecutor implements IStepExecutor {
steps.unstash name steps.unstash name
} }
@Override
def unstable(String message) {
steps.unstable message
}
@Override @Override
def zip(String dir, String zipFile, String glob = '') { def zip(String dir, String zipFile, String glob = '') {
steps.zip dir: dir, zipFile: zipFile, glob: glob, overwrite: true steps.zip dir: dir, zipFile: zipFile, glob: glob, overwrite: true

View File

@@ -6,9 +6,11 @@ import ru.pulsar.jenkins.library.ioc.ContextRegistry
import ru.pulsar.jenkins.library.utils.Logger import ru.pulsar.jenkins.library.utils.Logger
import ru.pulsar.jenkins.library.utils.VRunner import ru.pulsar.jenkins.library.utils.VRunner
import java.lang.reflect.Array
class Bdd implements Serializable { class Bdd implements Serializable {
private final JobConfiguration config; private final JobConfiguration config
Bdd(JobConfiguration config) { Bdd(JobConfiguration config) {
this.config = config this.config = config
@@ -29,13 +31,19 @@ class Bdd implements Serializable {
steps.installLocalDependencies() steps.installLocalDependencies()
steps.createDir('build/out') steps.createDir('build/out')
List returnStatuses = []
config.bddOptions.vrunnerSteps.each {
Logger.println("Шаг запуска сценариев командой ${it}")
String vrunnerPath = VRunner.getVRunnerPath()
returnStatuses.add(VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"", true) as Integer)
}
steps.catchError { if (Collections.max(returnStatuses) > 2) {
config.bddOptions.vrunnerSteps.each { steps.error("Получен неожиданный/неверный результат работы. Возможно, работа 1С:Предприятие завершилась некорректно, или возникла ошибка при запуске")
Logger.println("Шаг запуска сценариев командой ${it}") } else if (returnStatuses.contains(1)) {
String vrunnerPath = VRunner.getVRunnerPath(); steps.unstable("Тестирование сценариев завершилось, но часть фич/сценариев упала")
VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"") } else {
} Logger.println("Тестирование сценариев завершилось успешно")
} }
} }