1
0
mirror of https://github.com/firstBitMarksistskaya/jenkins-lib.git synced 2025-08-25 20:09:25 +02:00

Добавил тесты, исправил опечатки

This commit is contained in:
Dima
2021-11-30 21:08:19 +03:00
parent b94e104a55
commit e72184c17e
9 changed files with 22 additions and 8 deletions

1
.gitignore vendored
View File

@@ -3,6 +3,7 @@
build/ build/
bin/ bin/
lib/ lib/
out/
*.iml *.iml
.classpath .classpath

View File

@@ -112,7 +112,7 @@ pipeline1C()
* `STORAGE_USER` - параметры авторизации в хранилище вида "username with password" (для `secrets` -> `storage`). * `STORAGE_USER` - параметры авторизации в хранилище вида "username with password" (для `secrets` -> `storage`).
* Все "шаги" по умолчанию выключены (`stages`). * Все "шаги" по умолчанию выключены (`stages`).
* Если в корне репозитория существует файл `packagedef`, то в шагах, работающих с информационной базой, будет выполнена попытка установки локальных зависимостей средствами `opm`. * Если в корне репозитория существует файл `packagedef`, то в шагах, работающих с информационной базой, будет выполнена попытка установки локальных зависимостей средствами `opm`.
* Если после установки локальных зависимостей в каталоге `oscript_modules/bin` сушествует файл `vrunner`, то для выполнения команд работы с информационной базой будет использоваться он, а не глобально установленный `vrunner` из `PATH`. * Если после установки локальных зависимостей в каталоге `oscript_modules/bin` существует файл `vrunner`, то для выполнения команд работы с информационной базой будет использоваться он, а не глобально установленный `vrunner` из `PATH`.
* Результаты в формате `allure` ожидаются в каталоге `build/out/allure` или его подкаталогах. * Результаты в формате `allure` ожидаются в каталоге `build/out/allure` или его подкаталогах.
* Инициализация: * Инициализация:
* Информационная база инициализируется только в том случае, если в сборочной линии включены шаги, работающие с базой (например, `bdd` или `syntaxCheck`). * Информационная база инициализируется только в том случае, если в сборочной линии включены шаги, работающие с базой (например, `bdd` или `syntaxCheck`).
@@ -121,14 +121,16 @@ pipeline1C()
* Первичный запуск информационной базы: * Первичный запуск информационной базы:
* Если информационная база нужна для запуска в режиме "Предприятие" (например, для шагов `bdd` или `smoke`), то будет запущен шаг "Миграция ИБ". * Если информационная база нужна для запуска в режиме "Предприятие" (например, для шагов `bdd` или `smoke`), то будет запущен шаг "Миграция ИБ".
* После загрузки конфигурации в ИБ будет выполняться запуск ИБ с целью запуска обработчиков обновления из БСП (`initInfobase` -> `runMigration`). * После загрузки конфигурации в ИБ будет выполняться запуск ИБ с целью запуска обработчиков обновления из БСП (`initInfobase` -> `runMigration`).
* Если в настройках шага инициализации не заполнен массив дополнительных шагов миграции (`initInfobase` -> `additionalInitializationSteps`), но в каталоге `tools` присутствуют файлы с именами, удовлетворяющими шаблону `vrunner.init*.json`, то автоматически выполняется запуск `vrunner vanessa` с передачей найденных файлов в качестве значения настроек (параметр `--settings`) в порядке лексиграфической сортировки имен файлов. * Если в настройках шага инициализации не заполнен массив дополнительных шагов миграции (`initInfobase` -> `additionalInitializationSteps`), но в каталоге `tools` присутствуют файлы с именами, удовлетворяющими шаблону `vrunner.init*.json`, то автоматически выполняется запуск `vrunner vanessa` с передачей найденных файлов в качестве значения настроек (параметр `--settings`) в порядке лексикографической сортировки имен файлов.
* BDD: * BDD:
* Если в конфигурационном файле проекта не заполнена настройка `bdd` -> `vrunnerSteps`, то автоматически выполняется запуск `vrunner vanessa --settings tools/vrunner.json`. * Если в конфигурационном файле проекта не заполнена настройка `bdd` -> `vrunnerSteps`, то автоматически выполняется запуск `vrunner vanessa --settings tools/vrunner.json`.
* Дымовые тесты
* Если в конфигурационном файле проекта не заполнена настройка `smoke` -> `vrunnerSettings`, то автоматически выполняется запуск `vrunner vanessa --settings tools/vrunner.json`, а на выходе формируется только отчет в формате JUnit
* Синтаксический контроль: * Синтаксический контроль:
* Если в репозитории существует файл `tools/vrunner.json`, то синтаксический контроль конфигурации с помощью конфигуратора будет выполняться с передачей файла в параметры запуска `vrunner syntax-check --settings tools/vrunner.json` (`syntaxCheck` -> `vrunnerSettings`). * Если в репозитории существует файл `tools/vrunner.json`, то синтаксический контроль конфигурации с помощью конфигуратора будет выполняться с передачей файла в параметры запуска `vrunner syntax-check --settings tools/vrunner.json` (`syntaxCheck` -> `vrunnerSettings`).
* Применяется группировка ошибок по метаданным (`syntaxCheck` -> `groupErrorsByMetadata`). * Применяется группировка ошибок по метаданным (`syntaxCheck` -> `groupErrorsByMetadata`).
* Выгрузка результатов в формат `jUnit` осуществляется в файл `./build/out/jUnit/syntax.xml` (`syntaxCheck` -> `pathToJUnitReport`). * Выгрузка результатов в формат `jUnit` осуществляется в файл `./build/out/jUnit/syntax.xml` (`syntaxCheck` -> `pathToJUnitReport`).
* Если в репозитории существует файл `./tools/syntax-check-exception-file.txt`, то команде запука синтаксического контроля конфигурации данный файл будет передаваться как файл с исключениями сообщений об ошибках (параметр `--exception-file`) (`syntaxCheck` -> `exceptionFile`). * Если в репозитории существует файл `./tools/syntax-check-exception-file.txt`, то команде запуска синтаксического контроля конфигурации данный файл будет передаваться как файл с исключениями сообщений об ошибках (параметр `--exception-file`) (`syntaxCheck` -> `exceptionFile`).
* Конфигурационный файл по умолчанию уже содержит ряд "режимов проверки" для синтаксического контроля конфигурации (`syntaxCheck` -> `checkModes`). * Конфигурационный файл по умолчанию уже содержит ряд "режимов проверки" для синтаксического контроля конфигурации (`syntaxCheck` -> `checkModes`).
* Трансформация результатов валидации EDT: * Трансформация результатов валидации EDT:
* По умолчанию из результатов анализа исключаются замечания, сработавшие на модулях с включенным запретом редактирования (желтый куб с замком) (параметры `resultsTransform` -> `removeSupport` и `resultsTransform` -> `supportLevel`). * По умолчанию из результатов анализа исключаются замечания, сработавшие на модулях с включенным запретом редактирования (желтый куб с замком) (параметры `resultsTransform` -> `removeSupport` и `resultsTransform` -> `supportLevel`).

View File

@@ -59,6 +59,7 @@ class ConfigurationReader implements Serializable {
"initInfobaseOptions", "initInfobaseOptions",
"bddOptions", "bddOptions",
"sonarQubeOptions", "sonarQubeOptions",
"smokeTestOptions",
"syntaxCheckOptions", "syntaxCheckOptions",
"resultsTransformOptions" "resultsTransformOptions"
).toSet() ).toSet()

View File

@@ -69,6 +69,7 @@ class JobConfiguration implements Serializable {
", initInfobaseOptions=" + initInfobaseOptions + ", initInfobaseOptions=" + initInfobaseOptions +
", bddOptions=" + bddOptions + ", bddOptions=" + bddOptions +
", sonarQubeOptions=" + sonarQubeOptions + ", sonarQubeOptions=" + sonarQubeOptions +
", smokeTestOptions=" + smokeTestOptions +
", syntaxCheckOptions=" + syntaxCheckOptions + ", syntaxCheckOptions=" + syntaxCheckOptions +
", smokeTestOptions=" + smokeTestOptions + ", smokeTestOptions=" + smokeTestOptions +
", resultsTransformOptions=" + resultsTransformOptions + ", resultsTransformOptions=" + resultsTransformOptions +

View File

@@ -25,10 +25,10 @@ class SmokeTestOptions implements Serializable {
@Override @Override
@NonCPS @NonCPS
String toString() { String toString() {
return "SyntaxCheckOptions{" + return "SmokeTestOptions{" +
"vrunnerSettings=" + vrunnerSettings + "vrunnerSettings=" + vrunnerSettings +
", publishToAllureReport=" + publishToAllureReport + ", publishToAllureReport=" + publishToAllureReport +
", publishToJUnitReport=" + publishToJUnitReport + ", publishToJUnitReport=" + publishToJUnitReport +
'}'; '}'
} }
} }

View File

@@ -12,7 +12,7 @@ class SmokeTest implements Serializable {
public static final String SMOKE_ALLURE_STASH = 'smoke-allure' public static final String SMOKE_ALLURE_STASH = 'smoke-allure'
private final JobConfiguration config; private final JobConfiguration config
SmokeTest(JobConfiguration config) { SmokeTest(JobConfiguration config) {
this.config = config this.config = config
@@ -41,7 +41,7 @@ class SmokeTest implements Serializable {
String vrunnerSettings = options.vrunnerSettings String vrunnerSettings = options.vrunnerSettings
if (steps.fileExists(vrunnerSettings)) { if (steps.fileExists(vrunnerSettings)) {
command += " --settings $vrunnerSettings"; command += " --settings $vrunnerSettings"
} }
String xddTestRunnerPath = "./oscript_modules/add/xddTestRunner.epf" String xddTestRunnerPath = "./oscript_modules/add/xddTestRunner.epf"

View File

@@ -28,7 +28,7 @@ class VersionParser implements Serializable {
return "" return ""
} }
def configurationText = steps.readFile(filePath); def configurationText = steps.readFile(filePath, 'UTF-8')
return version(configurationText, regexp) return version(configurationText, regexp)
} }

View File

@@ -44,6 +44,10 @@ class ConfigurationReaderTest {
assertThat(jobConfiguration.getResultsTransformOptions().isRemoveSupport()).isFalse(); assertThat(jobConfiguration.getResultsTransformOptions().isRemoveSupport()).isFalse();
assertThat(jobConfiguration.getResultsTransformOptions().getSupportLevel()).isZero(); assertThat(jobConfiguration.getResultsTransformOptions().getSupportLevel()).isZero();
assertThat(jobConfiguration.getSmokeTestOptions().getVrunnerSettings()).contains("./tools/vrunner-smoke.json");
assertThat(jobConfiguration.getSmokeTestOptions().isPublishToAllureReport()).isFalse();
assertThat(jobConfiguration.getSmokeTestOptions().isPublishToJUnitReport()).isTrue();
assertThat(jobConfiguration.getInitInfobaseOptions().getRunMigration()).isFalse(); assertThat(jobConfiguration.getInitInfobaseOptions().getRunMigration()).isFalse();
assertThat(jobConfiguration.getInitInfobaseOptions().getAdditionalInitializationSteps()).contains("vanessa --settings ./tools/vrunner.first.json"); assertThat(jobConfiguration.getInitInfobaseOptions().getAdditionalInitializationSteps()).contains("vanessa --settings ./tools/vrunner.first.json");

View File

@@ -18,5 +18,10 @@
"resultsTransform": { "resultsTransform": {
"removeSupport": false "removeSupport": false
}, },
"smoke": {
"vrunnerSettings": "./tools/vrunner-smoke.json",
"publishToAllureReport": false,
"publishToJUnitReport": true
},
"logosConfig": "logger.rootLogger=DEBUG" "logosConfig": "logger.rootLogger=DEBUG"
} }