You've already forked devscripts
mirror of
https://github.com/DoublesunRUS/devscripts.git
synced 2026-06-20 01:16:55 +02:00
Запуск автофич из расширений
This commit is contained in:
+30
-25
@@ -1316,6 +1316,7 @@
|
||||
знч CI_JOB_TOKEN = СредаИсполнения.ПолучитьПеременную("CI_JOB_TOKEN")
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
знч CI_PROJECT_NAMESPACE = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_NAMESPACE")
|
||||
знч CI_PROJECT_PATH = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_PATH")
|
||||
знч CI_SERVER_HOST = СредаИсполнения.ПолучитьПеременную("CI_SERVER_HOST")
|
||||
|
||||
знч запросНаСлияние = ПараметрыЗапросаНаСлияние()
|
||||
@@ -1332,7 +1333,12 @@
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %имяВетки")
|
||||
Git_Clone(адресРепозиторияТестов, имяВетки)
|
||||
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}/auto_features/AFParams.json")
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
пер каталогПроектаАвтофич = "%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}"
|
||||
если репозиторийСценарныхТестов.Имя == имяТекущегоПроекта
|
||||
каталогПроектаАвтофич = "%CI_PROJECT_DIR"
|
||||
;
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%каталогПроектаАвтофич/auto_features/AFParams.json")
|
||||
|
||||
знч полныйПутьПрикладнойСборки = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_ПРИКЛАДНОЙ_СБОРКИ"
|
||||
знч полныйПутьТестовойСборки = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_ТЕСТОВОЙ_СБОРКИ"
|
||||
@@ -1414,8 +1420,8 @@
|
||||
ExecuteCommand(КОМАНДЫ_ОБНОВЛЕНИЯ_БД, строкаСоединения, исполняемыйФайлПлатформы, настройкиАвтофич.ТестоваяБаза
|
||||
.ИмяПользователя)
|
||||
|
||||
Консоль.Записать("СоздатьФичи: %{репозиторийСценарныхТестов.Имя}")
|
||||
СоздатьФичи(настройкиСкрипта, настройкиАвтофич, репозиторийСценарныхТестов.Имя)
|
||||
Консоль.Записать("СоздатьФичи: %каталогПроектаАвтофич")
|
||||
СоздатьФичи(настройкиСкрипта, настройкиАвтофич, каталогПроектаАвтофич)
|
||||
|
||||
Консоль.Записать("Подготовить временные ИБ для тестирования: %{настройкиАвтофич.ТестоваяБаза.ТипРасположенияИБ} %путьИБОбщий")
|
||||
пер временныеИБПользователей = новый Соответствие()
|
||||
@@ -1435,8 +1441,9 @@
|
||||
временныеИБПользователей.Вставить(пользователь.Представление, временнаяИБ)
|
||||
;
|
||||
|
||||
Консоль.Записать("ЗапуститьСценарныеТесты: %{репозиторийСценарныхТестов.Имя} %{настройкиАвтофич.ТестоваяБаза.ТипРасположенияИБ} %путьИБОбщий")
|
||||
ЗапуститьСценарныеТесты(настройкиСкрипта, настройкиАвтофич, исполняемыйФайлПлатформы, репозиторийСценарныхТестов.Имя, временныеИБПользователей)
|
||||
знч каталогРезультатовТестов = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_РЕЗУЛЬТАТОВ_ТЕСТОВ"
|
||||
Консоль.Записать("ЗапуститьСценарныеТесты: %каталогПроектаАвтофич %{настройкиАвтофич.ТестоваяБаза.ТипРасположенияИБ} %путьИБОбщий")
|
||||
ЗапуститьСценарныеТесты(настройкиСкрипта, настройкиАвтофич, исполняемыйФайлПлатформы, каталогПроектаАвтофич, каталогРезультатовТестов, временныеИБПользователей)
|
||||
|
||||
если настройкиАвтофич.ТестоваяБаза.ТипРасположенияИБ == ТипыРасположенияИБ.Серверная
|
||||
Консоль.Записать("Удалить временные серверные ИБ для тестирования")
|
||||
@@ -1537,29 +1544,21 @@
|
||||
;
|
||||
;
|
||||
|
||||
метод СоздатьФичи(настройкиСкрипта: ОписаниеНастроекСкрипта, настройкиАвтофич: ОписаниеНастроекАвтофич, имяРепозитория: Строка)
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
|
||||
знч каталогПроекта = "%CI_PROJECT_DIR/%имяРепозитория"
|
||||
|
||||
знч автофичи = СписокФайловАвтофич("%каталогПроекта/auto_features")
|
||||
метод СоздатьФичи(настройкиСкрипта: ОписаниеНастроекСкрипта, настройкиАвтофич: ОписаниеНастроекАвтофич, каталогПроектаАвтофич: Строка)
|
||||
знч автофичи = СписокФайловАвтофич("%каталогПроектаАвтофич/auto_features")
|
||||
если автофичи.Пусто()
|
||||
выбросить новый ИсключениеНедопустимоеСостояние("Нет ни одного файла автофич по пути %каталогПроекта/auto_features")
|
||||
выбросить новый ИсключениеНедопустимоеСостояние("Нет ни одного файла автофич по пути %каталогПроектаАвтофич/auto_features")
|
||||
;
|
||||
|
||||
СоздатьФайлыФичПоАвтофичам(
|
||||
"%каталогПроекта/features", автофичи,
|
||||
"%каталогПроектаАвтофич/features", автофичи,
|
||||
настройкиАвтофич.Шаблоны.Пользователи, "%{настройкиСкрипта.CI_VA}/templates", настройкиАвтофич.Шаблоны.ФайлШаблонаШапки)
|
||||
;
|
||||
|
||||
метод ЗапуститьСценарныеТесты(настройкиСкрипта: ОписаниеНастроекСкрипта, настройкиАвтофич: ОписаниеНастроекАвтофич, исполняемыйФайлПлатформы: Строка, имяРепозитория: Строка, временныеИБПользователей: Соответствие)
|
||||
знч CI_PROJECT_DIR = СредаИсполнения.ПолучитьПеременную("CI_PROJECT_DIR")
|
||||
метод ЗапуститьСценарныеТесты(настройкиСкрипта: ОписаниеНастроекСкрипта, настройкиАвтофич: ОписаниеНастроекАвтофич,
|
||||
исполняемыйФайлПлатформы: Строка, каталогПроектаАвтофич: Строка, каталогРезультатовТестов: Строка, временныеИБПользователей: Соответствие)
|
||||
|
||||
знч каталогПроекта = "%CI_PROJECT_DIR/%имяРепозитория"
|
||||
|
||||
знч полныйПутьРезультатовТестов = "%CI_PROJECT_DIR/%ИМЯ_КАТАЛОГА_РЕЗУЛЬТАТОВ_ТЕСТОВ"
|
||||
|
||||
знч каталогВыгрузкиAllure = "%полныйПутьРезультатовТестов/allure"
|
||||
знч каталогВыгрузкиAllure = "%каталогРезультатовТестов/allure"
|
||||
|
||||
знч максимальноеВремяОжидания = 300с
|
||||
|
||||
@@ -1583,11 +1582,11 @@
|
||||
ExecuteDataProcessor(имяФайлаVA, "%установкаВнешнейКомпонентыVA;ОтключитьЛогикуНачалаРаботыСистемы", временнаяИБ.строкаСоединения, исполняемыйФайлПлатформы, настройкиАвтофич.ТестоваяБаза
|
||||
.ИмяПользователя, "", максимальноеВремяОжидания)
|
||||
|
||||
знч каталогФич = "%каталогПроекта/features/%{пользователь.Представление}"
|
||||
знч каталогФич = "%каталогПроектаАвтофич/features/%{пользователь.Представление}"
|
||||
|
||||
знч конечныйПорт = начальныйПорт + диапазонПортов - 1
|
||||
|
||||
пер настройкиVAParams = новый VAParams(каталогПроекта, каталогФич, ["%{настройкиСкрипта.CI_VA}/steps"])
|
||||
пер настройкиVAParams = новый VAParams(каталогПроектаАвтофич, каталогФич, ["%{настройкиСкрипта.CI_VA}/steps"])
|
||||
|
||||
знч настройкиVAParamsВыполнениеСценариев = новый VAParamsВыполнениеСценариев()
|
||||
настройкиVAParams.ВыполнениеСценариев = настройкиVAParamsВыполнениеСценариев
|
||||
@@ -1662,7 +1661,7 @@
|
||||
для пользователь из настройкиАвтофич.Шаблоны.Пользователи
|
||||
пер временнаяИБ = временныеИБПользователей.Получить(пользователь.Представление)
|
||||
|
||||
Файлы.Скопировать("%{временнаяИБ.путьСлужебныхФайлов}/junit/junit.xml", "%полныйПутьРезультатовТестов/junit/junit-%индекс.xml")
|
||||
Файлы.Скопировать("%{временнаяИБ.путьСлужебныхФайлов}/junit/junit.xml", "%каталогРезультатовТестов/junit/junit-%индекс.xml")
|
||||
индекс += 1
|
||||
;
|
||||
;
|
||||
@@ -1862,8 +1861,14 @@
|
||||
.Имя}.git"
|
||||
Консоль.Записать("Git_Clone: %адресРепозиторияТестов %имяВетки")
|
||||
Git_Clone(адресРепозиторияТестов, имяВетки)
|
||||
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}/auto_features/AFParams.json")
|
||||
|
||||
знч имяТекущегоПроекта = CI_PROJECT_PATH.Заменить("%CI_PROJECT_NAMESPACE/", "")
|
||||
пер каталогПроектаАвтофич = "%CI_PROJECT_DIR/%{репозиторийСценарныхТестов.Имя}"
|
||||
если репозиторийСценарныхТестов.Имя == имяТекущегоПроекта
|
||||
каталогПроектаАвтофич = "%CI_PROJECT_DIR"
|
||||
;
|
||||
|
||||
знч настройкиАвтофич = ПрочитатьНастройкиАвтофич("%каталогПроектаАвтофич/auto_features/AFParams.json")
|
||||
|
||||
AllureGenerate(настройкиАвтофич)
|
||||
;
|
||||
|
||||
Reference in New Issue
Block a user