Skip to content

Добавлен генератор отчета в формате Generic Execution#891

Merged
artbear merged 6 commits into
vanessa-opensource:developfrom
yukon39:feature/issue-890
Sep 1, 2021
Merged

Добавлен генератор отчета в формате Generic Execution#891
artbear merged 6 commits into
vanessa-opensource:developfrom
yukon39:feature/issue-890

Conversation

@yukon39

@yukon39 yukon39 commented Aug 31, 2021

Copy link
Copy Markdown
Contributor

реализация #890

сделанные изменения:

  • Добавлен генератор отчета в формате Generic Execution

@yukon39

yukon39 commented Aug 31, 2021

Copy link
Copy Markdown
Contributor Author

Проблема - в отчете путь к результатам тестов формируется как полный путь в текущем дереве тестов. SonarQube же нужны полные пути к существующим файлам тестов в одной из папок указанных в sonar.tests.

В общем виде реализовать возврат в нужном виде затруднительно, т.к.:

  1. Требуется знать путь к исходникам тестов в текущем проекте
  2. Требуется знать формат исходников (XML/EDT) и правила их размещения внутри проекта
  3. требуется для каждого загрузчика тестов иметь алгоритм конвертации полного пути в дереве тестов в полный путь к исходникам.

Например, для тестов внутри расширения, если расширение находится внутри папки src/test конвертация выглядит так:

Процедура ОбработатьРезультатыТестов(ИмяФайлаРезультатовТестов )

	ТекстовыйДокумент = Новый ТекстовыйДокумент();
	ТекстовыйДокумент.Прочитать(ИмяФайлаРезультатовТестов, КодировкаТекста.UTF8);
	СтрокаXML = ТекстовыйДокумент.ПолучитьТекст();

	ШаблонПодстановки = "<file path=""src/test/CommonModules/$1/Ext/Module.bsl"">";
	РегулярноеВыражение = Новый РегулярноеВыражение("<file path="".+(?>Клиент|Сервер)#(.+)"">");
	НоваяСтрокаXML = РегулярноеВыражение.Заменить(СтрокаXML, ШаблонПодстановки);
	ТекстовыйДокумент.УстановитьТекст(НоваяСтрокаXML);
	ТекстовыйДокумент.Записать(ИмяФайлаРезультатовТестов, КодировкаТекста.UTF8);

КонецПроцедуры

@artbear artbear added the tdd label Aug 31, 2021
@artbear artbear added this to the 6.7.0 milestone Aug 31, 2021
@artbear

artbear commented Aug 31, 2021

Copy link
Copy Markdown
Collaborator

Можно добавить настройки, через которые и управлять настройкой формата выгрузки, пути к исходникам и т.п.

@yukon39

yukon39 commented Aug 31, 2021

Copy link
Copy Markdown
Contributor Author

Это нужно, чтобы генератор знал какой загрузчик загружал данные, и мог к нему обратиться. А генератор, в свою очередь предоставлял API для конвертации.

Отдельная проблема, как в загрузчик передать пути к исходникам.

@artbear artbear left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

мелкие замечания есть.

@yukon39
yukon39 marked this pull request as ready for review September 1, 2021 10:17
@artbear

artbear commented Sep 1, 2021

Copy link
Copy Markdown
Collaborator

Итог - делаем пост-обработку хмл-файла отдельным скриптом, который уже знает особенности проекта (ЕДТ, Конфигуратор), используемые загрузчики и т.п.

пример пост-обработки #891 (comment)

@artbear
artbear merged commit bbb2ab6 into vanessa-opensource:develop Sep 1, 2021
@artbear

artbear commented Sep 1, 2021

Copy link
Copy Markdown
Collaborator

@yukon39 Большое спасибо!

@yukon39
yukon39 deleted the feature/issue-890 branch September 23, 2021 11:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Добавить генератор отчета для SonarQube (Generic Execution)

2 participants