mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2025-02-10 19:41:26 +02:00
#61 Вывод тегов в junit
This commit is contained in:
parent
c23423d910
commit
e6073ce0d5
@ -445,6 +445,15 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Создает структуру из массива.
|
||||
// Ключами будут элементы массива, а значением каждого элемента струтуруы - параметр `ЗначениеСтруктуры`
|
||||
//
|
||||
// Параметры:
|
||||
// Значения - Массив из Строка
|
||||
// ЗначениеСтруктуры - Произвольный
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура
|
||||
Функция МассивВСтруктуру(Значения, ЗначениеСтруктуры = Неопределено) Экспорт
|
||||
|
||||
Результат = Новый Структура();
|
||||
@ -454,9 +463,7 @@
|
||||
КонецЕсли;
|
||||
|
||||
Для Каждого Значение Из Значения Цикл
|
||||
|
||||
Результат.Вставить(Значение, ЗначениеСтруктуры);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
Возврат Результат;
|
||||
|
@ -80,8 +80,7 @@
|
||||
ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим);
|
||||
ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим);
|
||||
|
||||
Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги, РезультатТеста.Теги);
|
||||
Теги = ЮТСтроки.УникальныеСтроки(Теги);
|
||||
Теги = ЮТОтчетСлужебныйКлиентСервер.УникальныеТеги(Модуль, Набор, РезультатТеста);
|
||||
|
||||
Описание = НовыйОписаниеТеста();
|
||||
Описание.fullName = РезультатТеста.ПолноеИмяМетода + ПредставлениеРежима;
|
||||
|
@ -71,7 +71,7 @@
|
||||
|
||||
Для Каждого Набор Из Модуль.НаборыТестов Цикл
|
||||
|
||||
ЗаписатьНабор(ЗаписьXML, Набор, Номер);
|
||||
ЗаписатьНабор(ЗаписьXML, Модуль, Набор, Номер);
|
||||
Номер = Номер + 1;
|
||||
|
||||
КонецЦикла;
|
||||
@ -172,11 +172,14 @@
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
ЗаписатьСвойства(ЗаписьXML, Новый Структура, РезультатТеста.Теги);
|
||||
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаписатьОшибку(ЗаписьXML, ОписаниеОшибки)
|
||||
|
||||
Сообщение = СообщениеОбОшибке(ОписаниеОшибки);
|
||||
ЗаписьXML.ЗаписатьНачалоЭлемента("error");
|
||||
Если Сообщение <> Неопределено Тогда
|
||||
@ -192,9 +195,10 @@
|
||||
КонецЕсли;
|
||||
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаписатьНабор(ЗаписьXML, Набор, Номер)
|
||||
Процедура ЗаписатьНабор(ЗаписьXML, Модуль, Набор, Номер)
|
||||
|
||||
КоличествоТестов = 0;
|
||||
КоличествоПропущенных = 0;
|
||||
@ -234,12 +238,12 @@
|
||||
КонецЦикла;
|
||||
|
||||
Для Каждого РезультатТеста Из Набор.Тесты Цикл
|
||||
|
||||
ЗаписатьТест(ЗаписьXML, РезультатТеста);
|
||||
|
||||
КонецЦикла;
|
||||
|
||||
ЗаписатьСвойства(ЗаписьXML, Новый Структура("context", Набор.Режим));
|
||||
Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги);
|
||||
ЗаписатьСвойства(ЗаписьXML, Новый Структура("context", Набор.Режим), Теги);
|
||||
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента(); // testsuite
|
||||
|
||||
КонецПроцедуры
|
||||
@ -328,7 +332,11 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Процедура ЗаписатьСвойства(ЗаписьXML, Свойства)
|
||||
Процедура ЗаписатьСвойства(ЗаписьXML, Свойства, Теги = Неопределено)
|
||||
|
||||
Если НЕ ЗначениеЗаполнено(Свойства) И НЕ ЗначениеЗаполнено(Теги) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
ЗаписьXML.ЗаписатьНачалоЭлемента("properties");
|
||||
|
||||
@ -339,8 +347,27 @@
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента(); // property
|
||||
КонецЦикла;
|
||||
|
||||
ЗаписатьТеги(ЗаписьXML, Теги);
|
||||
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента(); // properties
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура ЗаписатьТеги(ЗаписьXML, НаборТегов)
|
||||
|
||||
Если НЕ ЗначениеЗаполнено(НаборТегов) Тогда
|
||||
Возврат;
|
||||
КонецЕсли;
|
||||
|
||||
УникальныеТеги = ЮТСтроки.УникальныеСтроки(НаборТегов);
|
||||
|
||||
Для Каждого Тег Из УникальныеТеги Цикл
|
||||
ЗаписьXML.ЗаписатьНачалоЭлемента("property");
|
||||
ЗаписьXML.ЗаписатьАтрибут("name", "tag");
|
||||
ЗаписьXML.ЗаписатьАтрибут("value", ЗначениеВСтрокуjUnit(Тег));
|
||||
ЗаписьXML.ЗаписатьКонецЭлемента(); // property
|
||||
КонецЦикла;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -0,0 +1,32 @@
|
||||
//©///////////////////////////////////////////////////////////////////////////©//
|
||||
//
|
||||
// Copyright 2021-2024 BIA-Technologies Limited Liability Company
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//
|
||||
//©///////////////////////////////////////////////////////////////////////////©//
|
||||
|
||||
#Область СлужебныйПрограммныйИнтерфейс
|
||||
|
||||
Функция УникальныеТеги(Модуль, Набор, РезультатТеста) Экспорт
|
||||
|
||||
Теги = ЮТКоллекции.ОбъединитьМассивы(Модуль.Теги, Набор.Теги, РезультатТеста.Теги);
|
||||
Возврат ЮТСтроки.УникальныеСтроки(Теги);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
|
||||
#КонецОбласти
|
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="1b07b92f-e8b1-4683-af00-493118e65411">
|
||||
<name>ЮТОтчетСлужебныйКлиентСервер</name>
|
||||
<synonym>
|
||||
<key>ru</key>
|
||||
<value>Отчет служебный клиент сервер</value>
|
||||
</synonym>
|
||||
<clientManagedApplication>true</clientManagedApplication>
|
||||
<server>true</server>
|
||||
<clientOrdinaryApplication>true</clientOrdinaryApplication>
|
||||
</mdclass:CommonModule>
|
@ -125,7 +125,7 @@
|
||||
Описание.Вставить("Тесты", Новый Массив);
|
||||
|
||||
Если ЗначениеЗаполнено(ТегиСтрокой) Тогда
|
||||
Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь);
|
||||
Описание.Теги = ЮТСтроки.РазделитьСтроку(ТегиСтрокой, ",");
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Описание;
|
||||
@ -166,7 +166,7 @@
|
||||
Описание.Вставить("НомерВНаборе", 0);
|
||||
|
||||
Если ЗначениеЗаполнено(ТегиСтрокой) Тогда
|
||||
Описание.Теги = СтрРазделить(ТегиСтрокой, ", ", Ложь);
|
||||
Описание.Теги = ЮТСтроки.РазделитьСтроку(ТегиСтрокой, ",");
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Описание;
|
||||
|
@ -99,7 +99,7 @@
|
||||
// * Расширения - Структура - Имена расширений
|
||||
// * Модули - Структура - Имена модулей
|
||||
// * Наборы - Массив из Строка - Имена тестовых наборов
|
||||
// * Теги - Массив из Строка
|
||||
// * Теги - Соответствие из Строка
|
||||
// * Контексты - Массив из Строка - Контексты вызова тестовых методов
|
||||
// * Тесты - Массив из см. ОписаниеИмениТеста - Список путей к тестовым методам
|
||||
// * Пути - Массив из Строка
|
||||
@ -110,7 +110,7 @@
|
||||
|
||||
Фильтр.Расширения = Новый Структура();
|
||||
Фильтр.Модули = Новый Структура();
|
||||
Фильтр.Теги = Новый Структура();
|
||||
Фильтр.Теги = Новый Соответствие();
|
||||
Фильтр.Контексты = Новый Массив();
|
||||
Фильтр.Наборы = Новый Массив();
|
||||
Фильтр.Пути = Новый Массив();
|
||||
@ -147,7 +147,7 @@
|
||||
КонецЕсли;
|
||||
|
||||
Если ЗначениеЗаполнено(Теги) Тогда
|
||||
Фильтр.Теги = ЮТКоллекции.МассивВСтруктуру(Теги);
|
||||
Фильтр.Теги = МассивВСоответствие(Теги);
|
||||
КонецЕсли;
|
||||
|
||||
Если ЗначениеЗаполнено(Наборы) Тогда
|
||||
@ -274,7 +274,7 @@
|
||||
|
||||
Для Каждого Тег Из Теги Цикл
|
||||
|
||||
Если Фильтр.Теги.Свойство(Тег) Тогда
|
||||
Если Фильтр.Теги[НРег(Тег)] <> Неопределено Тогда
|
||||
Возврат Истина;
|
||||
КонецЕсли;
|
||||
|
||||
@ -324,7 +324,7 @@
|
||||
|
||||
Для Каждого Тег Из Тест.Теги Цикл
|
||||
|
||||
Если Фильтр.Теги.Свойство(Тег) Тогда
|
||||
Если Фильтр.Теги[НРег(Тег)] <> Неопределено Тогда
|
||||
Возврат Истина;
|
||||
КонецЕсли;
|
||||
|
||||
|
@ -100,6 +100,7 @@
|
||||
<commonModules>CommonModule.ЮТОтчетJSONСлужебный</commonModules>
|
||||
<commonModules>CommonModule.ЮТОтчетJUnitСлужебный</commonModules>
|
||||
<commonModules>CommonModule.ЮТОтчетСлужебный</commonModules>
|
||||
<commonModules>CommonModule.ЮТОтчетСлужебныйКлиентСервер</commonModules>
|
||||
<commonModules>CommonModule.ЮТПараметрыЗапускаСлужебный</commonModules>
|
||||
<commonModules>CommonModule.ЮТПодключаемыеМодулиСлужебный</commonModules>
|
||||
<commonModules>CommonModule.ЮТПодключаемыеМодулиСлужебныйВызовСервера</commonModules>
|
||||
|
@ -232,7 +232,7 @@
|
||||
|
||||
ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов();
|
||||
|
||||
УстановитьНовыйФильтр(, , , "ТегТеста1, ТегТеста2, Т, _, Тег111");
|
||||
УстановитьНовыйФильтр(, , , "Тег Теста1, ТегТеста2, Т, _, Тег111");
|
||||
ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля);
|
||||
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов)
|
||||
@ -246,7 +246,7 @@
|
||||
|
||||
ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов();
|
||||
|
||||
УстановитьНовыйФильтр(, , , "ТегНабора");
|
||||
УстановитьНовыйФильтр(, , , "Тег Набора");
|
||||
ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля);
|
||||
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов)
|
||||
@ -255,7 +255,7 @@
|
||||
|
||||
ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов();
|
||||
|
||||
УстановитьНовыйФильтр(, , , "ТегНабора, ТегТеста");
|
||||
УстановитьНовыйФильтр(, , , "Тег Набора, ТегТеста");
|
||||
ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля);
|
||||
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов)
|
||||
@ -268,16 +268,16 @@
|
||||
Процедура Фильтр_ТегиМодуля() Экспорт
|
||||
|
||||
ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов();
|
||||
УстановитьНовыйФильтр(, , , "ТегМодуля");
|
||||
УстановитьНовыйФильтр(, , , "Тег Модуля");
|
||||
ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля);
|
||||
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов)
|
||||
.ИмеетДлину(0);
|
||||
|
||||
ОписаниеМодуля = ОписаниеМодуляДляТестированияФильтрацииТегов();
|
||||
ОписаниеМодуля.Теги.Добавить("ТегМодуля");
|
||||
ОписаниеМодуля.Теги.Добавить("Тег Модуля");
|
||||
|
||||
УстановитьНовыйФильтр(, , , "ТегМодуля");
|
||||
УстановитьНовыйФильтр(, , , "Тег Модуля");
|
||||
ЮТФильтрацияСлужебный.ОтфильтроватьТестовыеНаборы(ОписаниеМодуля);
|
||||
|
||||
ЮТест.ОжидаетЧто(ОписаниеМодуля.НаборыТестов)
|
||||
@ -359,7 +359,7 @@
|
||||
|
||||
Возврат ЮТФабрикаСлужебный.ОписаниеТеста(ИмяТеста,
|
||||
ЮТест.Данные().СлучайнаяСтрока(),
|
||||
СтрРазделить(КонтекстыВызова, ", ", Ложь),
|
||||
ЮТСтроки.РазделитьСтроку(КонтекстыВызова, ","),
|
||||
Теги);
|
||||
|
||||
КонецФункции
|
||||
@ -373,12 +373,12 @@
|
||||
Функция ОписаниеМодуляДляТестированияФильтрацииТегов()
|
||||
|
||||
Набор1 = ОписаниеНабораТестов();
|
||||
Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("ТегНабора");
|
||||
Набор1.Теги = ЮТКоллекции.ЗначениеВМассиве("Тег набора");
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста());
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста1, ТегТеста2"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "Тег Теста1"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "Тег Теста1, ТегТеста2"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТЕГТеста1"));
|
||||
Набор1.Тесты.Добавить(ОписаниеТеста(, , "ТЕГ Теста1"));
|
||||
|
||||
Набор2 = ОписаниеНабораТестов();
|
||||
Набор2.Тесты.Добавить(ОписаниеТеста(, , "ТегТеста2"));
|
||||
|
Loading…
x
Reference in New Issue
Block a user