mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2025-03-17 20:48:01 +02:00
ORAIS-1278: Если в ИсполняемыеСценарии выпадает ошибка, то тесты просто не определяются и ошибка нигде не отображается.
This commit is contained in:
parent
b79b3624f8
commit
ce2bc60f50
@ -314,6 +314,7 @@
|
||||
НаборыКонтекстов = Новый Структура;
|
||||
|
||||
ТестыНабора = ЮТОбщий.ЗначениеСтруктуры(ТестовыйНабор, "Тесты", Новый Массив());
|
||||
ОбработатьОшибкиЧтенияНабора(ТестовыйНабор, ТестовыйМодуль);
|
||||
|
||||
Для Каждого Тест Из ТестыНабора Цикл
|
||||
|
||||
@ -328,6 +329,9 @@
|
||||
КонецЕсли;
|
||||
|
||||
ИсполняемыйТест = ЮТФабрика.ОписаниеИсполняемогоТеста(Тест, Контекст, ТестовыйМодуль);
|
||||
Если Тест.Свойство("Ошибки") И Тест.Ошибки.Количество() > 0 Тогда
|
||||
ИсполняемыйТест.Ошибки = ЮТОбщий.СкопироватьМассив(Тест.Ошибки);
|
||||
КонецЕсли;
|
||||
ИсполняемыйНабор.Тесты.Добавить(ИсполняемыйТест);
|
||||
|
||||
КонецЦикла;
|
||||
@ -348,6 +352,31 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ОбработатьОшибкиЧтенияНабора(Набор, Модуль)
|
||||
ТестыНабора = ЮТОбщий.ЗначениеСтруктуры(Набор, "Тесты", Новый Массив());
|
||||
Ошибки = ЮТОбщий.ЗначениеСтруктуры(Набор, "Ошибки", Новый Массив());
|
||||
|
||||
Если Ошибки.Количество() > 0 Тогда
|
||||
Для Каждого Ошибка Из Ошибки Цикл
|
||||
Если Ошибка.ТипОшибки = ЮТФабрика.ТипыОшибок().ЧтенияТестов Тогда
|
||||
Тест = ОписаниеТестаСОшибкойЧтения(Модуль, Ошибка);
|
||||
ТестыНабора.Добавить(Тест);
|
||||
|
||||
Прервать;
|
||||
КонецЕсли;
|
||||
КонецЦикла;
|
||||
КонецЕсли;
|
||||
КонецПроцедуры
|
||||
|
||||
Функция ОписаниеТестаСОшибкойЧтения(Модуль, Ошибка)
|
||||
Контексты = ЮТФабрика.КонтекстыМодуля(Модуль.МетаданныеМодуля);
|
||||
Тест = ЮТФабрика.ОписаниеТеста("ИсполняемыеСценарии", "ИсполняемыеСценарии", Контексты);
|
||||
Тест.Вставить("Ошибки", Новый Массив);
|
||||
Тест.Ошибки.Добавить(ЮТОбщий.СкопироватьСтруктуру(Ошибка));
|
||||
|
||||
Возврат Тест;
|
||||
КонецФункции
|
||||
|
||||
Процедура ПоказатьОтчет(РезультатыТестирования, Параметры)
|
||||
|
||||
Данные = Новый Структура("РезультатыТестирования, ПараметрыЗапуска", РезультатыТестирования, Параметры);
|
||||
|
@ -20,6 +20,11 @@
|
||||
|
||||
Процедура ИсполняемыеСценарии() Экспорт
|
||||
|
||||
Контекст = ЮТКонтекст.ДанныеКонтекста();
|
||||
Если ЮТОбщий.ЗначениеСтруктуры(Контекст, ИмяРеквизитаПроверки(), Ложь) Тогда
|
||||
ВызватьИсключение "Проверка чтения состава тестов";
|
||||
КонецЕсли;
|
||||
|
||||
ЮТТесты
|
||||
.ДобавитьТест("ИсполняемыеСценарииМодуля")
|
||||
.ДобавитьТестовыйНабор("ЭтоТестовыйМодуль", "Параметризированный, 1,2")
|
||||
@ -30,6 +35,8 @@
|
||||
.СПараметрами("ЮТЧитатель", Ложь)
|
||||
.ДобавитьТестовыйНабор("ЗагрузкаТестов")
|
||||
.ДобавитьКлиентскийТест("ЗагрузитьТесты")
|
||||
.ДобавитьТестовыйНабор("ИсполняемыеСценарииМодуляСОшибкойЧтения")
|
||||
.ДобавитьТест("ИсполняемыеСценарииМодуляСОшибкойЧтения")
|
||||
;
|
||||
|
||||
КонецПроцедуры
|
||||
@ -67,7 +74,7 @@
|
||||
|
||||
ЮТест.ОжидаетЧто(НаборыТестов, "Наборы тестов модуля")
|
||||
.ИмеетТип("Массив")
|
||||
.ИмеетДлину(3);
|
||||
.ИмеетДлину(4);
|
||||
|
||||
ЮТест.ОжидаетЧто(НаборыТестов[0], "Набор тестов по умолчанию")
|
||||
.ИмеетТип("Структура")
|
||||
@ -113,7 +120,7 @@
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля, "ОписаниеМодуля")
|
||||
.ИмеетТип("Структура")
|
||||
.Свойство("НаборыТестов")
|
||||
.ИмеетДлину(3)
|
||||
.ИмеетДлину(4)
|
||||
.Элемент("НаборыТестов[0]").ИмеетТип("Структура")
|
||||
.Элемент("НаборыТестов[1]").ИмеетТип("Структура")
|
||||
.Элемент("НаборыТестов[2]").ИмеетТип("Структура")
|
||||
@ -150,6 +157,32 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ИсполняемыеСценарииМодуляСОшибкойЧтения() Экспорт
|
||||
ОписаниеМодуля = ЮТФабрика.ОписаниеМодуля();
|
||||
ОписаниеМодуля.Имя = "ОМ_ЮТЧитатель";
|
||||
ОписаниеМодуля.ПолноеИмя = "tests.ОМ_ЮТЧитатель";
|
||||
ОписаниеМодуля.Расширение = "tests";
|
||||
#Если Клиент Тогда
|
||||
ОписаниеМодуля.КлиентУправляемоеПриложение = Истина;
|
||||
ОписаниеМодуля.КлиентОбычноеПриложение = Истина;
|
||||
#Иначе
|
||||
ОписаниеМодуля.Сервер = Истина;
|
||||
#КонецЕсли
|
||||
|
||||
ЮТКонтекст.УстановитьЗначениеКонтекста(ИмяРеквизитаПроверки(), Истина);
|
||||
|
||||
Результат = ЮТЧитатель.ИсполняемыеСценарииМодуля(ОписаниеМодуля);
|
||||
ЮТест.ОжидаетЧто(Результат)
|
||||
.ИмеетТип("Структура")
|
||||
.Свойство("НаборыТестов")
|
||||
.ИмеетДлину(1)
|
||||
.Свойство("НаборыТестов[0].Ошибки")
|
||||
.ИмеетДлину(1)
|
||||
.Свойство("НаборыТестов[0].Ошибки[0].ТипОшибки")
|
||||
.Равно(ЮТФабрика.ТипыОшибок().ЧтенияТестов)
|
||||
;
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЭтоТестовыйМодуль(ИмяМодуля, ЭтоТестовый) Экспорт
|
||||
|
||||
ОписаниеМодуля = ЮТМетаданныеСервер.МетаданныеМодуля(ИмяМодуля);
|
||||
@ -159,3 +192,11 @@
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
Функция ИмяРеквизитаПроверки()
|
||||
Возврат "ПроверкаЧтенияСоставаТестов";
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
Loading…
x
Reference in New Issue
Block a user