Skip to content

Commit

Permalink
Bdd step unstable (#3)
Browse files Browse the repository at this point in the history
Шаг BDD помечается как Unstable в случае ошибок в сценариях
  • Loading branch information
ivanmolodec authored May 2, 2024
1 parent 835873f commit a8ed25b
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 7 deletions.
2 changes: 2 additions & 0 deletions src/ru/pulsar/jenkins/library/IStepExecutor.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,8 @@ interface IStepExecutor {

def unstash(String name)

def unstable(String message)

def zip(String dir, String zipFile)

def zip(String dir, String zipFile, String glob)
Expand Down
5 changes: 5 additions & 0 deletions src/ru/pulsar/jenkins/library/StepExecutor.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,11 @@ class StepExecutor implements IStepExecutor {
steps.unstash name
}

@Override
def unstable(String message) {
steps.unstable message
}

@Override
def zip(String dir, String zipFile, String glob = '') {
steps.zip dir: dir, zipFile: zipFile, glob: glob, overwrite: true
Expand Down
22 changes: 15 additions & 7 deletions src/ru/pulsar/jenkins/library/steps/Bdd.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,11 @@ import ru.pulsar.jenkins.library.ioc.ContextRegistry
import ru.pulsar.jenkins.library.utils.Logger
import ru.pulsar.jenkins.library.utils.VRunner

import java.lang.reflect.Array

class Bdd implements Serializable {

private final JobConfiguration config;
private final JobConfiguration config

Bdd(JobConfiguration config) {
this.config = config
Expand All @@ -29,13 +31,19 @@ class Bdd implements Serializable {
steps.installLocalDependencies()

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 {
config.bddOptions.vrunnerSteps.each {
Logger.println("Шаг запуска сценариев командой ${it}")
String vrunnerPath = VRunner.getVRunnerPath();
VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"")
}
if (Collections.max(returnStatuses) > 2) {
steps.error("Получен неожиданный/неверный результат работы. Возможно, работа 1С:Предприятие завершилась некорректно, или возникла ошибка при запуске")
} else if (returnStatuses.contains(1)) {
steps.unstable("Тестирование сценариев завершилось, но часть фич/сценариев упала")
} else {
Logger.println("Тестирование сценариев завершилось успешно")
}
}

Expand Down

0 comments on commit a8ed25b

Please sign in to comment.