-
Notifications
You must be signed in to change notification settings - Fork 6
/
test.os
65 lines (43 loc) · 2.54 KB
/
test.os
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#Использовать 1testrunner
#Использовать fs
#Использовать 1commands
Функция ПрогнатьТесты()
Тестер = Новый Тестер;
Тестер.УстановитьФорматЛогФайла(Тестер.ФорматыЛогФайла().GenericExec);
ПутьКТестам = "tests";
ПутьКОтчетуJUnit = "out";
ФС.ОбеспечитьПустойКаталог(ПутьКОтчетуJUnit);
РезультатТестирования = Тестер.ТестироватьКаталог(
Новый Файл(ПутьКТестам),
Новый Файл(ПутьКОтчетуJUnit)
);
ИзолированныеТесты = НайтиФайлы(ОбъединитьПути("tests", "ИзолированныеТесты"), "*.os");
Для Каждого Тест Из ИзолированныеТесты Цикл
Команда = Новый Команда;
Команда.ПоказыватьВыводНемедленно(Истина);
Команда.УстановитьИсполнениеЧерезКомандыСистемы(Ложь);
Команда.УстановитьКоманду("oscript");
Команда.ДобавитьПараметр(ОбъединитьПути("tasks", "testIsolated.os"));
Команда.ДобавитьПараметр(Тест.ПолноеИмя);
КодВозврата = Команда.Исполнить();
РезультатТестирования = Макс(РезультатТестирования, КодВозврата);
КонецЦикла;
Успешно = РезультатТестирования = 0;
Возврат Успешно;
КонецФункции // ПрогнатьТесты()
// основной код
ТекКаталог = ТекущийКаталог();
Попытка
ТестыПрошли = ПрогнатьТесты();
Исключение
ТестыПрошли = Ложь;
Сообщить(СтрШаблон("Тесты через 1testrunner выполнены неудачно
|%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
КонецПопытки;
УстановитьТекущийКаталог(ТекКаталог);
Если Не ТестыПрошли Тогда
ВызватьИсключение "Тестирование завершилось неудачно!";
Иначе
Сообщить(СтрШаблон("Результат прогона тестов <%1>
|", ТестыПрошли));
КонецЕсли;