|
1 |
| -// #Использовать "../src" |
2 | 1 | #Использовать 1bdd
|
3 | 2 | #Использовать 1testrunner
|
| 3 | +#Использовать fs |
4 | 4 |
|
5 |
| -Функция ПрогнатьТесты() |
6 |
| - |
7 |
| - Тестер = Новый Тестер; |
| 5 | +Функция ПрогнатьФичи(Знач КаталогФайловПокрытия, Знач ПутьФич = "features", Знач ПутьОтчетаJUnit = "./bdd-log.xml") |
8 | 6 |
|
9 |
| - ПутьКТестам = ОбъединитьПути(ТекущийСценарий().Каталог, "..", "tests"); |
10 |
| - ПутьКОтчетуJUnit = ОбъединитьПути(ТекущийСценарий().Каталог, ".."); |
| 7 | + КаталогФич = ОбъединитьПути(".", ПутьФич); |
11 | 8 |
|
12 |
| - КаталогТестов = Новый Файл(ПутьКТестам); |
13 |
| - Если Не КаталогТестов.Существует() Тогда |
14 |
| - Сообщить(СтрШаблон("Не найден каталог тестов %1", ПутьКТестам)); |
15 |
| - Возврат Истина; |
16 |
| - КонецЕсли; |
17 |
| - |
18 |
| - РезультатТестирования = Тестер.ТестироватьКаталог( |
19 |
| - КаталогТестов, |
20 |
| - Новый Файл(ПутьКОтчетуJUnit) |
21 |
| - ); |
22 |
| - |
23 |
| - Успешно = РезультатТестирования = 0; |
24 |
| - |
25 |
| - Возврат Успешно; |
26 |
| -КонецФункции // ПрогнатьТесты() |
27 |
| - |
28 |
| -Функция ПрогнатьФичи() |
29 |
| - |
30 |
| - ПутьКОтчетам = ОбъединитьПути("build", "reports"); |
31 |
| - СоздатьКаталог(ПутьКОтчетам); |
32 |
| - |
33 |
| - ПутьОтчетаJUnit = ОбъединитьПути(ПутьКОтчетам, "bdd-log.xml"); |
| 9 | + Файл_КаталогФич = Новый Файл(КаталогФич); |
34 | 10 |
|
35 |
| - КаталогФич = ОбъединитьПути(".", "features"); |
| 11 | + ИсполнительБДД = Новый ИсполнительБДД; |
36 | 12 |
|
37 |
| - Файл_КаталогФич = Новый Файл(КаталогФич); |
38 |
| - Если Не Файл_КаталогФич.Существует() Тогда |
39 |
| - Сообщить(СтрШаблон("Не найден каталог фич %1", КаталогФич)); |
40 |
| - Возврат Истина; |
| 13 | + Если ЗначениеЗаполнено(КаталогФайловПокрытия) Тогда |
| 14 | + ИсполнительБДД.СохранитьВКонтекст("ПризнакСтатистикиСкриптовOnescript", Новый Файл(КаталогФайловПокрытия)); |
41 | 15 | КонецЕсли;
|
42 | 16 |
|
43 |
| - ИсполнительБДД = Новый ИсполнительБДД; |
44 | 17 | РезультатыВыполнения = ИсполнительБДД.ВыполнитьФичу(Файл_КаталогФич, Файл_КаталогФич);
|
45 | 18 | ИтоговыйРезультатВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
|
46 | 19 |
|
47 |
| - СтатусВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения().НеВыполнялся; |
| 20 | + СтатусыВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения(); |
| 21 | + |
| 22 | + СтатусВыполнения = СтатусыВыполнения.НеВыполнялся; |
48 | 23 | Если РезультатыВыполнения.Строки.Количество() > 0 Тогда
|
49 |
| - |
| 24 | + |
50 | 25 | СтатусВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения);
|
51 |
| - |
| 26 | + ИсполнительБДД.ПоказатьПроблемныеСценарии(РезультатыВыполнения); |
| 27 | + |
| 28 | + ИсполнительБДД.ВывестиИтоговыеРезультатыВыполнения(РезультатыВыполнения, Файл_КаталогФич.ЭтоКаталог()); |
52 | 29 | КонецЕсли;
|
53 | 30 |
|
54 | 31 | ГенераторОтчетаJUnit = Новый ГенераторОтчетаJUnit;
|
55 | 32 | ГенераторОтчетаJUnit.Сформировать(РезультатыВыполнения, СтатусВыполнения, ПутьОтчетаJUnit);
|
56 | 33 |
|
57 |
| - Сообщить(СтрШаблон("Результат прогона фич <%1> |
58 |
| - |", ИтоговыйРезультатВыполнения)); |
| 34 | + Сообщить(СтрШаблон("Результат прогона фич <%1>. Путь %2 |
| 35 | + |", ИтоговыйРезультатВыполнения, ПутьФич)); |
| 36 | + |
| 37 | + Возврат ИтоговыйРезультатВыполнения <> СтатусыВыполнения.Сломался; |
| 38 | +КонецФункции |
| 39 | + |
| 40 | +ИмяКаталогаФайловПокрытия = "coverage"; |
| 41 | + |
| 42 | +// основной код |
| 43 | + |
| 44 | +ТекКаталог = ТекущийКаталог(); |
59 | 45 |
|
60 |
| - Возврат ИтоговыйРезультатВыполнения <> ИсполнительБДД.ВозможныеСтатусыВыполнения().Сломался; |
61 |
| -КонецФункции // ПрогнатьФичи() |
| 46 | +КаталогФайловПокрытия = ""; |
62 | 47 |
|
63 |
| -// Попытка |
64 |
| -// ТестыПрошли = ПрогнатьТесты(); |
| 48 | +ИспользуетсяПокрытиеКода = Ложь; |
| 49 | +Для каждого Элемент Из АргументыКоманднойСтроки Цикл |
| 50 | + Если Элемент = "coverage" Тогда |
65 | 51 |
|
66 |
| -// Исключение |
67 |
| -// ТестыПрошли = Ложь; |
68 |
| -// Сообщить(СтрШаблон("Тесты через 1testrunner выполнены неудачно |
69 |
| -// |%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); |
70 |
| -// КонецПопытки; |
| 52 | + КаталогФайловПокрытия = ОбъединитьПути(ТекущийКаталог(), ".", ИмяКаталогаФайловПокрытия); |
| 53 | + ФС.ОбеспечитьПустойКаталог(КаталогФайловПокрытия); |
| 54 | + |
| 55 | + Прервать; |
| 56 | + КонецЕсли; |
| 57 | +КонецЦикла; |
| 58 | + |
| 59 | +УстановитьТекущийКаталог(ТекКаталог); |
71 | 60 |
|
72 | 61 | Попытка
|
73 |
| - ФичиПрошли = ПрогнатьФичи(); |
| 62 | + ФичиПрошли = ПрогнатьФичи(КаталогФайловПокрытия, "features"); |
74 | 63 | Исключение
|
75 | 64 | ФичиПрошли = Ложь;
|
76 | 65 | Сообщить(СтрШаблон("Тесты поведения через 1bdd выполнены неудачно
|
77 | 66 | |%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())));
|
78 | 67 | КонецПопытки;
|
79 | 68 |
|
| 69 | +Сообщить(СтрШаблон("Результат прогона основных фич <%1> |
| 70 | +|", ФичиПрошли)); |
| 71 | + |
80 | 72 | Если Не ФичиПрошли Тогда
|
81 | 73 | ВызватьИсключение "Тестирование завершилось неудачно!";
|
82 |
| -Иначе |
83 |
| - Сообщить(СтрШаблон("Результат прогона тестов <%1> |
84 |
| - |", ФичиПрошли)); |
85 | 74 | КонецЕсли;
|
0 commit comments