forked from vanessa-opensource/vanessa-runner
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ПроверкаТестов.feature
210 lines (172 loc) · 14 KB
/
ПроверкаТестов.feature
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
# language: ru
Функционал: Проверка запуска и работы xunit-тестов через Ванесса-АДД
Как Разработчик/Инженер по тестированию
Я Хочу иметь возможность автоматической проверки запуска тестов через Ванесса-АДД
Чтобы удостовериться в качестве подготовленной конфигурации
Контекст:
Допустим я подготовил репозиторий и рабочий каталог проекта
И я подготовил рабочую базу проекта "./build/ib" по умолчанию
И Я копирую каталог "xdd_test" из каталога "tests/fixtures" проекта в подкаталог "build" рабочего каталога
И Я копирую каталог "feature" из каталога "tests/fixtures" проекта в подкаталог "build" рабочего каталога
И Я копирую файл "xUnitParams.json" из каталога "tests/fixtures" проекта в подкаталог "build" рабочего каталога
И Я сохраняю значение "INFO" в переменную окружения "LOGOS_LEVEL"
Сценарий: Запуск тестирования xunit
Дано файл "build/xdd_test.epf" не существует
Дано Я очищаю параметры команды "oscript" в контексте
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os compileepf build/xdd_test build --language ru"
И Я очищаю параметры команды "oscript" в контексте
Дано файл "build/xdd_test.epf" существует
Когда Я добавляю параметр "<КаталогПроекта>/src/main.os xunit" для команды "oscript"
И Я добавляю параметр "build/xdd_test.epf" для команды "oscript"
И Я добавляю параметр "--ibconnection /Fbuild/ib" для команды "oscript"
И Я добавляю параметр "--workspace ./build" для команды "oscript"
И Я добавляю параметр "--xddConfig build/xUnitParams.json" для команды "oscript"
И Я добавляю параметр "--xddExitCodePath ./build/xddExitCodePath.txt" для команды "oscript"
И Я добавляю параметр "--language ru" для команды "oscript"
Когда Я выполняю команду "oscript"
И Я сообщаю вывод команды "oscript"
Тогда Вывод команды "oscript" содержит
| Выполняю тесты с помощью фреймворка Vanessa-ADD (Vanessa Automation Driven Development) |
| -->> тест ТестДолжен_ЧтоТоСделать |
| ИНФОРМАЦИЯ - Все тесты выполнены! |
| Выполнение тестов завершено |
И Код возврата команды "oscript" равен 0
Сценарий: Падающий серверный тест xunit возвращает код 1 и в логе консоли видна причина падения
И Я сохраняю значение "DEBUG" в переменную окружения "LOGOS_LEVEL"
Когда Я создаю файл "build/xUnitParams.json" с текстом
"""
{
"$schema":"https://raw.githubusercontent.com/silverbulleters/vanessa-runner/develop/xunit-schema.json",
"Отладка":true,
"ДелатьЛогВыполненияСценариевВТекстовыйФайл":true,
"ИмяФайлаЛогВыполненияСценариев": "$workspaceRoot/build/log-xunit.txt"
}
"""
Дано Я создаю файл "build/xdd_test/xdd_test/Ext/ObjectModule.bsl" с текстом
"""
Перем КонтекстЯдра;
Процедура Инициализация(КонтекстЯдраПараметр) Экспорт
КонтекстЯдра = КонтекстЯдраПараметр;
КонецПроцедуры
Процедура ЗаполнитьНаборТестов(НаборТестов) Экспорт
НаборТестов.Добавить("ТестДолжен_Упасть");
КонецПроцедуры
Процедура ТестДолжен_Упасть() Экспорт
ВызватьИсключение "Падаю внутри теста ТестДолжен_Упасть";
КонецПроцедуры
"""
И файл "build/xdd_test.epf" не существует
Дано Я очищаю параметры команды "oscript" в контексте
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os compileepf build/xdd_test build --language ru"
И файл "build/xdd_test.epf" существует
И Код возврата команды "oscript" равен 0
И Я очищаю параметры команды "oscript" в контексте
Когда Я создаю файл "build/env.json" с текстом
"""
{
"default": {
"--v8version": "8.3.10"
}
}
"""
# "--additional": " /DisplayAllFunctions /Lru /iTaxi /TESTMANAGER /Debug /DebuggerURL tcp://localhost:1560",
Когда Я добавляю параметр "<КаталогПроекта>/src/main.os xunit" для команды "oscript"
И Я добавляю параметр "build/xdd_test.epf" для команды "oscript"
# И Я добавляю параметр "--ibconnection /Fbuild/ib" для команды "oscript"
И Я добавляю параметр "--ibconnection /FT:\repo\add\build\ib" для команды "oscript"
И Я добавляю параметр "--workspace ./build" для команды "oscript"
И Я добавляю параметр "--xddConfig build/xUnitParams.json" для команды "oscript"
И Я добавляю параметр "--xddExitCodePath ./build/xddExitCodePath.txt" для команды "oscript"
И Я добавляю параметр "--language ru" для команды "oscript"
# И Я добавляю параметр "--xdddebug" для команды "oscript"
Когда Я выполняю команду "oscript"
И Я показываю вывод команды
Тогда Вывод команды "oscript" содержит
| -->> тест ТестДолжен_Упасть |
| Выполняю тесты с помощью фреймворка Vanessa-ADD (Vanessa Automation Driven Development) |
| Часть тестов упала! |
| Падаю внутри теста ТестДолжен_Упасть |
И Код возврата команды "oscript" равен 1
Сценарий: Отсутствующий тест xunit
Тогда Файл "build/xdd_test/xdd_test/Ext/ObjectModule.bsl" содержит
"""
Перем КонтекстЯдра;
Перем Ожидаем;
Перем Утверждения;
"""
Дано Я создаю файл "build/xdd_test/xdd_test/Ext/ObjectModule.bsl" с текстом
"""
Перем КонтекстЯдра;
Процедура Инициализация(КонтекстЯдраПараметр) Экспорт
КонтекстЯдра = КонтекстЯдраПараметр;
КонецПроцедуры
Процедура ЗаполнитьНаборТестов(НаборТестов) Экспорт
НаборТестов.Добавить("ТестДолжен_БытьПропущен");
КонецПроцедуры
Процедура ТестДолжен_БытьПропущен() //Экспорт специально отключен
КонецПроцедуры
"""
И файл "build/xdd_test.epf" не существует
Дано Я очищаю параметры команды "oscript" в контексте
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os compileepf build/xdd_test build --language ru"
И файл "build/xdd_test.epf" существует
И Код возврата команды "oscript" равен 0
И Я очищаю параметры команды "oscript" в контексте
Когда Я добавляю параметр "<КаталогПроекта>/src/main.os xunit" для команды "oscript"
И Я добавляю параметр "build/xdd_test.epf" для команды "oscript"
И Я добавляю параметр "--ibconnection /Fbuild/ib" для команды "oscript"
И Я добавляю параметр "--workspace ./build" для команды "oscript"
И Я добавляю параметр "--xddConfig build/xUnitParams.json" для команды "oscript"
И Я добавляю параметр "--xddExitCodePath ./build/xddExitCodePath.txt" для команды "oscript"
И Я добавляю параметр "--language ru" для команды "oscript"
Когда Я выполняю команду "oscript"
И Я сообщаю вывод команды "oscript"
Тогда Вывод команды "oscript" содержит
| -->> тест ТестДолжен_БытьПропущен |
| Выполняю тесты с помощью фреймворка Vanessa-ADD (Vanessa Automation Driven Development) |
| ИНФОРМАЦИЯ - Все тесты выполнены! |
| Выполнение тестов завершено |
# | ПРЕДУПРЕЖДЕНИЕ - Ошибок при тестировании не найдено, но часть тестов еще не реализована! |
И Код возврата команды "oscript" равен 0
# И Код возврата команды "oscript" равен 2
Сценарий: Проверка исключения и показа лога от 1С, когда еще не успел выполниться браузер тестов
# И Я сохраняю значение "DEBUG" в переменную окружения "LOGOS_LEVEL"
И Я копирую каталог "fixture-epf/fixture" из каталога "tests/fixtures" проекта в подкаталог "build" рабочего каталога
Дано я создаю каталог "build/fixture/Тест1/Forms/Форма/Ext/Form" в рабочем каталоге
Дано Я создаю файл "build/fixture/Тест1/Forms/Форма/Ext/Form/Module.bsl" с текстом
"""
&НаКлиенте
Процедура ПриОткрытии(Отказ)
Сообщить("хочу видеть сообщение в логе выполнения - Сообщить");
ПодключитьОбработчикОжидания("ОБработчикОжиданимя", 0.5, Истина);
КонецПроцедуры
&НаКлиенте
Процедура ОБработчикОжиданимя()
Сообщить("хочу видеть сообщение в логе выполнения - Сообщить 2");
ЗавершитьРаботуСистемы(Ложь);
КонецПроцедуры
"""
И файл "fixture/Тест1.epf" не существует
Дано Я очищаю параметры команды "oscript" в контексте
Когда Я выполняю команду "oscript" с параметрами "<КаталогПроекта>/src/main.os compileepf build/fixture build --language ru"
И файл "build/Тест1.epf" существует
И Код возврата команды "oscript" равен 0
И Я очищаю параметры команды "oscript" в контексте
Когда Я добавляю параметр "<КаталогПроекта>/src/main.os xunit" для команды "oscript"
И Я добавляю параметр "build/Тест1.epf" для команды "oscript"
И Я добавляю параметр "--ibconnection /Fbuild/ib" для команды "oscript"
И Я добавляю параметр "--workspace ./build" для команды "oscript"
И Я добавляю параметр "--pathxunit build/Тест1.epf" для команды "oscript"
И Я добавляю параметр "--xddConfig build/xUnitParams.json" для команды "oscript"
И Я добавляю параметр "--xddExitCodePath ./build/xddExitCodePath.txt" для команды "oscript"
И Я добавляю параметр "--language ru" для команды "oscript"
Когда Я выполняю команду "oscript"
И Я сообщаю вывод команды "oscript"
Тогда Вывод команды "oscript" содержит
| Управляемое приложение |
| Обработка Тест1 |
| хочу видеть сообщение в логе выполнения - Сообщить |
| хочу видеть сообщение в логе выполнения - Сообщить 2 |
| Выполняю тесты с помощью фреймворка Vanessa-ADD (Vanessa Automation Driven Development) |
| Получен неожиданный/неверный результат работы - Не найден файл статуса |
И Код возврата команды "oscript" равен 1