diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\274\320\260\320\275\320\264\320\260\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\320\270\320\275\321\202\320\260\320\272\321\201\320\270\321\201\320\260.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\274\320\260\320\275\320\264\320\260\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\320\270\320\275\321\202\320\260\320\272\321\201\320\270\321\201\320\260.os" index 0856da59..3cffaa9e 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\274\320\260\320\275\320\264\320\260\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\320\270\320\275\321\202\320\260\320\272\321\201\320\270\321\201\320\260.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\232\320\276\320\274\320\260\320\275\320\264\320\260\320\237\321\200\320\276\320\262\320\265\321\200\320\272\320\260\320\241\320\270\320\275\321\202\320\260\320\272\321\201\320\270\321\201\320\260.os" @@ -26,6 +26,7 @@ "Путь файла с указанием пропускаемых исключений | Формат файла: в каждой строке файла указан текст пропускаемого исключения или его часть | Кодировка: UTF-8"); + Парсер.ДобавитьПараметрФлагКоманды(ОписаниеКоманды, "--hide-exception", "Не показывать исключения в отчетах"); Парсер.ДобавитьПараметрКоллекцияКоманды(ОписаниеКоманды, "--mode", "Параметры проверок (через пробел). | Например, -ThinClient -WebClient -Server -ExternalConnection -ThickClientOrdinaryApplication @@ -132,6 +133,7 @@ ГруппироватьПоМетаданным = ПараметрыКоманды["--groupbymetadata"]; ИмяФайлаИсключенийОшибок = ПараметрыКоманды["--exception-file"]; + НеПоказыватьИсключения = ПараметрыКоманды.Получить("--hide-exception") = Истина; ЛогПроверкиИзКонфигуратора = ""; ДанныеПодключения = ПараметрыКоманды["ДанныеПодключения"]; @@ -162,7 +164,15 @@ Лог.Информация("Проверка проекта завершена за %1с", Окр(ТекущаяУниверсальнаяДата() - ДатаНачала)); // UTC МенеджерКонфигуратора.Деструктор(); - РезультатТестирования = ОбработатьЛогОшибок(ДатаНачала, ЛогПроверкиИзКонфигуратора, ГруппироватьПоМетаданным, ИмяФайлаИсключенийОшибок); + ПараметрыОбработатьЛогОШибок = Новый Структура; + ПараметрыОбработатьЛогОШибок.вставить("ДатаНачала", ДатаНачала); + ПараметрыОбработатьЛогОШибок.вставить("ДатаОкончания", ДатаОкончания); + ПараметрыОбработатьЛогОШибок.вставить("ЛогПроверкиИзКонфигуратора", ЛогПроверкиИзКонфигуратора); + ПараметрыОбработатьЛогОШибок.вставить("ГруппироватьПоМетаданным", ГруппироватьПоМетаданным); + ПараметрыОбработатьЛогОШибок.вставить("ИмяФайлаИсключенийОшибок", ИмяФайлаИсключенийОшибок); + ПараметрыОбработатьЛогОШибок.вставить("НеПоказыватьИсключения", НеПоказыватьИсключения); + + РезультатТестирования = ОбработатьЛогОшибок(ПараметрыОбработатьЛогОШибок); Если РезультатТестирования.КоличествоУпало = 0 Тогда ОшибокНет = Истина; КонецЕсли; @@ -208,20 +218,21 @@ /////////////////////////////////////////////////////////////////////////////////////////////////// -Функция ОбработатьЛогОшибок(ДатаНачала, ЛогПроверкиИзКонфигуратора, ГруппироватьПоМетаданным, ИмяФайлаИсключенийОшибок) +Функция ОбработатьЛогОшибок(Параметры) РезультатТестирования = Новый Структура; РезультатТестирования.Вставить("Ошибки", Новый Соответствие); РезультатТестирования.Вставить("ВсеОшибки", ""); - РезультатТестирования.Вставить("ДатаНачала", ДатаНачала); + РезультатТестирования.Вставить("ДатаНачала", Параметры.ДатаНачала); + РезультатТестирования.Вставить("ДатаОкончания", Параметры.ДатаОкончания); РезультатТестирования.Вставить("КоличествоПроверок", 0); РезультатТестирования.Вставить("КоличествоПропущено", 0); РезультатТестирования.Вставить("КоличествоУпало", 0); - РезультатТестирования.Вставить("РазделитьВремя", ГруппироватьПоМетаданным); + РезультатТестирования.Вставить("РазделитьВремя", Параметры.ГруппироватьПоМетаданным); МассивСтрокИсключений = МассивСтрокИсключений(); - ПропускаемыеОшибки = СодержимоеФайлаИсключенийОшибок(ИмяФайлаИсключенийОшибок); - ОбработанныйЛог = СтрЗаменить(ЛогПроверкиИзКонфигуратора, Символы.ВК + Символы.Таб, Символы.Таб); + ПропускаемыеОшибки = СодержимоеФайлаИсключенийОшибок(Параметры.ИмяФайлаИсключенийОшибок); + ОбработанныйЛог = СтрЗаменить(Параметры.ЛогПроверкиИзКонфигуратора, Символы.ВК + Символы.Таб, Символы.Таб); ОбработанныйЛог = СтрЗаменить(ОбработанныйЛог, Символы.ПС + Символы.Таб, Символы.Таб); Лог.Отладка("ОбработанныйЛог %1", ОбработанныйЛог); @@ -230,7 +241,7 @@ ОставшиесяОшибки = ИзбавитьсяОтИсключений(ОбработанныйЛог, МассивСтрокИсключений); ОбработанныйЛог = СтрСоединить(ОставшиесяОшибки, Символы.ПС); - Если НЕ ГруппироватьПоМетаданным Тогда + Если НЕ Параметры.ГруппироватьПоМетаданным Тогда Лог.Отладка("Ветка НЕ ГруппироватьПоМетаданным"); Лог.Отладка("ОставшиесяОшибки %1", ОбработанныйЛог); @@ -248,7 +259,7 @@ Для Каждого ТекСтрока Из ОставшиесяОшибки Цикл ОписаниеОшибки = ПолучитьОписаниеОшибки(ТекСтрока, ИмяТестСценарияПредыдущаяСтрока); - ДополнитьРезультатТекстомОшибки(РезультатТестирования, ОписаниеОшибки, ПропускаемыеОшибки, ТекСтрока); + ДополнитьРезультатТекстомОшибки(РезультатТестирования, ОписаниеОшибки, ПропускаемыеОшибки, ТекСтрока, Параметры.НеПоказыватьИсключения); КонецЦикла; Возврат РезультатТестирования; @@ -444,10 +455,14 @@ КонецФункции Процедура ДополнитьРезультатТекстомОшибки(Результат, ОписаниеОшибки, Знач ПропускаемыеОшибки = Неопределено, - СтрокаЛога = "") + СтрокаЛога = "", НеПоказыватьИсключения = Ложь) Если СледуетПропуститьОшибку(СтрокаЛога, ПропускаемыеОшибки) Тогда + Если НеПоказыватьИсключения Тогда + Возврат; + КонецЕсли; + ОписаниеОшибки.ТипОшибки = "Пропущено"; КонецЕсли;