1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2026-05-02 20:52:28 +02:00

Переработка JF запуска YaxUnit

This commit is contained in:
Anton Titovets
2025-10-18 15:52:38 +03:00
parent c79aa5dd26
commit 8249341ec2
3 changed files with 34 additions and 25 deletions
@@ -134,6 +134,7 @@
МассивВлияющих = Новый Массив;
ЯзыкВрег = ВРег(Язык);
ЯзыкТрег = ТРег(Язык);
База = ?(Язык = "ru", База1сRu, База1сEn);
МодульТестов = Параметры["testsModulePath"];
МодульТестовCLI = Параметры["testsCliModulePath"];
@@ -167,7 +168,7 @@
ТекстJFCLIRPM = СтрШаблон(ШаблонCliRpm, Язык, ТекстВыполненияCLI, "Rpm-Agent");
ТекстJFCLIDEB = СтрШаблон(ШаблонCliDeb, Язык, ТекстВыполненияCLI, "Deb-Agent");
ТекстJF1CWin = СтрШаблон(Шаблон1cWindows, Язык, ТекстВыполнения1С);
ТекстJF1CWin = СтрШаблон(Шаблон1cWindows, Язык, ТекстВыполнения1С, Путь1с, Сервер1с, База);
ШаблонПредставления = "OPI | Тестирование версии для %1 (%2, %3)";
@@ -270,12 +271,11 @@
Для Каждого Библиотека Из СписокБиблиотек Цикл
Раздел = Библиотека.Ключ;
База = ?(Язык = "ru", База1сRu, База1сEn);
YaxConf = КаталогКонфигурацииYaxUnit + Язык + "/" + Раздел + ".json";
YaxФайл = Новый Файл(YaxConf);
Выполнение = СтрШаблон(ШаблонВыполнения1с, Путь1с, Сервер1с, База, Раздел, СтрЗаменить(YaxФайл.ПолноеИмя, "\", "\\"));
Выполнение = СтрШаблон(ШаблонВыполнения1с, Раздел, СтрЗаменить(YaxФайл.ПолноеИмя, "\", "\\"));
Отбор = Новый Структура(СтрокаРаздел, Раздел);
ТестыТекущегоРаздела = ТаблицаТестов.НайтиСтроки(Отбор);
+30
View File
@@ -6,6 +6,36 @@ def runCommand(String command) {
}
}
def runLibraryTest(String libraryName, String configPath) {
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
script {
runCommand("\"%3\" /IBConnectionString \"Srvr=\"\"%4\"\";Ref=\"\"%5\"\";\" /C\"RunUnitTests=${configPath}\"")
timeout(time: 60, unit: 'MINUTES') {
waitUntil {
fileExists "./test_results/${libraryName}.code"
}
}
if (fileExists("./test_results/${libraryName}.report")) {
def reportContent = readFile("./test_results/${libraryName}.report")
echo "=== ${libraryName} report content ==="
echo reportContent
echo "=========================="
} else {
echo "WARNING: ${libraryName}.report file not found"
}
def exitCode = readFile("./test_results/${libraryName}.code").trim().replaceAll("[^0-9]", "")
echo "Exit code for ${libraryName}: ${exitCode}"
if (exitCode != "0") {
error "Tests ${libraryName} failed with exit code: ${exitCode}"
}
}
}
}
pipeline {
agent {
label 'windows'
+1 -22
View File
@@ -1,26 +1,5 @@
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
script {
runCommand('"%1" /IBConnectionString "Srvr=\"\"%2\"\";Ref=\"\"%3\"\";" /C"RunUnitTests=%5"')
timeout(time: 60, unit: 'MINUTES') {
waitUntil {
fileExists './test_results/%4.code'
}
}
if (fileExists('./test_results/%4.report')) {
def reportContent = readFile('./test_results/%4.report')
echo "=== report content ==="
echo reportContent
echo "=========================="
} else {
echo "WARNING: %4.report file not found"
}
def exitCode = readFile('./test_results/%4.code').trim().replaceAll("[^0-9]", "")
if (exitCode != "0") {
error "Tests failed with exit code: ${exitCode}"
}
runLibraryTest('%1', '%2')
}
}