-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest-cases.yml
306 lines (297 loc) · 16.7 KB
/
test-cases.yml
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
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
---
- summary: |
Проверка регистрации нового пользователя с уникальным email и паролем
requirement: |
Пользователи могут регистрироваться на сайте с использованием уникального email и пароля
prerequisites: |
Открыта страница регистрации
test-data: |
email = [email protected]
password = NewPassword123
steps:
- Вводим email
- Вводим пароль
- Подтверждаем пароль
- Нажимаем кнопку Зарегистрироваться
expected-result: |
Пользователь успешно зарегистрирован и перенаправлен на страницу входа или профиля
- summary: |
Проверка входа на сайт через учетные данные Git или Discord
requirement: |
При использовании внешних провайдеров аутентификации (Git или Discord) пользователь должен успешно авторизоваться на сайте
prerequisites: |
Страница входа открыта
У пользователя есть активная учетная запись Git или Discord
На странице присутствуют кнопки "Войти через Git" и "Войти через Discord"
Сайт настроен для интеграции с Git и Discord
test-data: |
Username = gituser123
Password = GitPassword456
Учетная запись с поддержкой OAuth-авторизации
steps:
- Нажимаем кнопку "Войти через Git"
- Вводим Username
- Вводим Password
- Нажимаем кнопку "Авторизоваться"
- Нажимаем кнопку "Войти через Discord"
- Подтверждаем разрешение доступа к данным аккаунта Discord
- Подтверждаем OAuth-авторизацию для Discord
expected-result: |
Успешная авторизация пользователя через выбранный провайдер
Автоматическое перенаправление на главную страницу
Отображение имени пользователя или аватара в интерфейсе
Создание активной сессии пользователя
- summary: |
Проверка запуска игры авторизованным пользователем с главной страницы
requirement: |
Авторизованный пользователь должен иметь возможность запустить игру с главной страницы
prerequisites: |
Пользователь успешно авторизован на сайте
Открыта главная страница
На странице доступна кнопка Create Game
test-data: |
Email = [email protected]
Password = RegisteredPassword123
Game Name = Название Игры
Level = Medium
Game Mode = Bot
Time Control = 10 минут
Task = Tomato
steps:
- Нажимаем кнопку "Create Game"
- Вводим название игры "Название_Игры"
- Выбираем уровень сложности "Medium"
- Выбираем режим игры "Bot"
- Устанавливаем контроль времени 10 минут
- Выбираем тематику "Tomato"
- Нажимаем кнопку "Create Battle"
expected-result: |
Игра успешно запущена
Отображены все элементы интерфейса игры
Настройки игры соответствуют заданным
Элементы управления (игровое поле, счет, таймер) функционируют корректно
- summary: |
Проверка работы чата на главной странице
requirement: |
Чат на главной странице должен обеспечивать обмен сообщениями между пользователями
prerequisites: |
Пользователь успешно авторизован на сайте
Открыта главная страница
Чат виден на странице
test-data: |
Email = [email protected]
Password = RegisteredPassword123
Message = Привет, это тестовое сообщение!
steps:
- Вводим сообщение "Привет, это тестовое сообщение!"
- Нажимаем кнопку «Отправить»
expected-result: |
Сообщение успешно отправлено и отображается в чате
Отображается временная метка отправки
Виден аватар отправителя
Статус сообщения обновляется до "Прочитано"
Появляется уведомление о новом сообщении
Все сообщения отображаются в хронологическом порядке
- summary: |
Проверка функциональности раздела Профиль
requirement: |
Просмотр персональной информации пользователя
Корректное отображение всех данных профиля
Возможность редактирования профиля
prerequisites: |
Пользователь зарегистрирован на сайте
Выполнен вход в систему
test-data: |
Email = [email protected]
Password = RegisteredPassword123
New Name = UpdatedUser
steps:
- Открываем меню профиля
- Нажимаем пункт «Мой профиль»
- Нажимаем кнопку «Редактировать профиль»
- Вводим новое имя
- Нажимаем кнопку «Сохранить»
expected-result: |
Персональные данные отображаются
Фото профиля видно
Имя пользователя обновлено
Дата регистрации корректна
Ранг и рейтинг отображаются
Количество игр соответствует статистике
- summary: |
Проверка функциональности раздела Настройки
requirement: |
Изменение персональных данных
Настройку уведомлений
Управление социальными сетями
Сохранение внесённых изменений
prerequisites: |
Пользователь зарегистрирован на сайте
Выполнен вход в систему
test-data: |
Email = [email protected]
Password = RegisteredPassword123
New Name = qqqq123
steps:
- Открываем меню профиля
- Нажимаем пункт «Настройки»
- Вводим новое имя "qqqq123"
- Включаем уведомления по email
- Подключаем Discord
- Нажимаем кнопку «Сохранить изменения»
expected-result: |
Имя обновлено до qqqq123
Уведомления по email включены
Discord подключён
Изменения сохранены и отображаются
- summary: |
Проверка функциональности раздела Рейтинг пользователей
requirement: |
Отображение списка пользователей с рейтингами
Сортировку списка по убыванию рейтинга
Возможность просмотра подробной информации о пользователе
Реализацию пагинации или бесконечной прокрутки
prerequisites: |
Пользователь зарегистрирован на сайте
Выполнен вход в систему
test-data: |
Email = [email protected]
Password = RegisteredPassword123
steps:
- Открываем меню профиля
- Нажимаем пункт "Рейтинг пользователей"
- Переходим на следующую страницу пагинации
- Кликаем на пользователя из списка
expected-result: |
Список отсортирован по убыванию рейтинга
Отображаются ранг, имя, рейтинг, игры, дата регистрации
Пагинация переключает страницы
Профиль пользователя открывается с подробной информацией
- summary: |
Проверка функциональности создания турнира по программированию
requirement: |
Создание турнира в командном режиме
Указание параметров турнира
Валидацию входных данных
Сохранение настроек турнира
Отображение турнира в списке
prerequisites: |
Пользователь зарегистрирован на сайте
Выполнен вход в систему
У пользователя есть права на создание турниров
Открыта главная страница
test-data: |
Email = [email protected]
Пароль = AdminPassword123
Title = Кубок кодинга
Type = Командный
Teams = Команда Alpha Команда Beta
Description = Турнир между двумя командами Задачи средней сложности
Start Time = '2025-03-01T14:00:00Z'
Access = По токену
Gameplay Mode = Случайный раунд
Scoring Method = Выиграл или проиграл
Exercise Source = Пул упражнений
Difficulty = Средний
Number of Players = 64
Language = Java
Timeout = 600
Break Duration = 300
Rounds to Win = 3
steps:
- Открываем меню профиля
- Нажимаем пункт "Турниры"
- Вводим название Кубок кодинга
- Выбираем тип Командный
- Добавляем команды Команда Alpha, Команда Beta
- Вводим описание Турнир между двумя командами. Задачи средней сложности.
- Устанавливаем время начала 2025-03-01T14:00:00Z
- Выбираем доступ По токену
- Настраиваем ход игры Случайный раунд
- Настраиваем оценку Выиграл или проиграл
- Выбираем источник упражнений Пул упражнений
- Устанавливаем сложность Средний
- Указываем количество игроков 64
- Выбираем язык Java
- Устанавливаем таймаут 600 секунд
- Устанавливаем перерыв 300 секунд
- Настраиваем раунды до победы 3
- Нажимаем кнопку «Создать»
expected-result: |
- Турнир отображается в списке с указанными параметрами
- summary: |
Проверка работы формы обратной связи
requirement: |
Выбор категории обращения
Ввод текстового сообщения
Валидацию обязательных полей
Отправка данных на сервер
Отображение результата отправки
prerequisites: |
Пользователь находится на странице с формой обратной связи
Форма доступна для взаимодействия
test-data: |
Категория = Улучшения
Текст сообщения = Предлагаю добавить возможность фильтрации задач по сложности
steps:
- Открываем сайт
- Переходим на страницу с формой обратной связи
- Категория обращения
- Поле для текста
- Кнопка отправки
- Выбираем категорию "Улучшения" из выпадающего списка
- Вводим текст сообщения
- Нажимаем кнопку "Отправить"
- Проверяем появление подтверждающего сообщения
expected-result: |
Форма загружается без ошибок
Все поля доступны для ввода
Сообщение успешно отправляется
Появляется подтверждающее сообщение
Данные в форме очищаются
- summary: |
Проверка функциональности раздела "Упражнения"
requirement: |
Авторизованные пользователи могут создавать упражнения из соответствующего раздела.
prerequisites: |
Пользователь зарегистрирован на сайте.
Пользователь выполнен вход в систему.
test-data: |
email = [email protected]
password = RegisteredPassword123
exercise-title = Проверка статуса
difficulty = Легкая
language = Java
description = Напишите метод на Java, который принимает булево значение и возвращает строку Активно, если значение true, и Неактивно, если false.
input-parameters = Булево значение (boolean)
output-parameters = Строка (String)
steps:
- Открываем сайт и переходим к странице входа
- Вводим email [email protected]
- Вводим пароль RegisteredPassword123
- Нажимаем кнопку Войти
- На главной странице открываем меню профиля
- Нажимаем на пункт «Упражнения»
- Переходим в раздел "Создать упражнение"
- Заполняем форму создания упражнения
- В поле "Название" вводим "Проверка статуса"
- В выпадающем списке "Сложность" выбираем значение "Легкая"
- В выпадающем списке "Язык" выбираем значение "Java"
- В поле "Описание" вводим "Напишите метод на Java, который принимает булево значение и возвращает строку Активно, если значение true, и Неактивно, если false."
- В поле "Входные параметры" вводим "Булево значение (boolean)"
- В поле "Выходные параметры" вводим "Строка (String)"
- В секции "Примеры" добавляем три примера
- Ввод true
- Вывод Активно
- Ввод false
- Вывод Неактивно
- Ввод true
- Вывод Активно
- Нажимаем кнопку «Создать»
- Проверяем, что новое упражнение успешно создано и отображается в списке
- Переходим в раздел "Пул упражнений"
- Проверяем, что созданное упражнение присутствует в пуле упражнений
expected-result:
Упражнение успешно создано и отображается в разделе Пул упражнений
Все параметры упражнения заполнены корректно
Примеры тестов работают корректно