Автор: Кухарь Иван (@i.kukhar) · Дата: 2026-09-10 ·
Всего 14 MR в статусе opened
11 из 14 готовы к мержу, 3 ждут апрув (science-around, text-tasks-video, english_ai).
Мануальное тестирование рекомендовано для 5 MR: colors-game-api, logopedics-api, student-webinars-api, text-tasks-video-api (Ruby) и toy-logic-api (Node).
| Проект | Апрувы | Мануальное тестирование | MR |
|---|---|---|---|
| among-us-api | ✅ 1/1 | — | !19 |
| colors-game-api | ✅ 2 | ☑ Rails 8.0→8.1 (minor) + снятие пина concurrent-ruby | !64 |
| keyboard-master-api | ✅ 1/1 | — | !12 |
| logopedics-api | ✅ 1/1 | ☑ excon 0.x→1.x (major, Kafka schema registry), json-пин против падения elastic-apm; локально rspec не гонялся | !70 |
| magical-math-2-api | ✅ 1/1 | — | !24 |
| multiplication-trainer-api | ✅ 1/1 | — | !13 |
| rpg-math-backend | ✅ 1/1 | — | !21 |
| student-webinars-api | ✅ 1 | ☑ excon 0.x→1.x (kafka schema registry), rdoc 6→8 | !50 |
| text-tasks-video-api | ✅ 1 | ☑ non-conservative Rails-апдейт → ~28 транзитивных гемов (minitest 5→6, rdoc 6→8 и др.) | !74 |
| wizard-path-api | ✅ 1/1 | — | !83 |
| Проект | Апрувы | Мануальное тестирование | MR |
|---|---|---|---|
| science-around | ❌ 0/1 | — | !6 |
| text-tasks-video | ❌ 0/1 | — | !210 |
| english_ai | ⚠️ 2 указаны, осталось 1 | — | !197 |
| toy-logic-api | ✅ 0 требуются | ☑ Nest 11.1→11.2, fastify, piscina 3→4 (cross-major, runtime Kafka/lz4), typeorm-extension/faker (prod seed) | !88 |
Это чек-листы для ручного тестирования обновлений зависимостей. Мы обновляем библиотеки, на которых работает бэкенд, чтобы закрыть уязвимости; код самих продуктов при этом не меняется, новых фич нет. Цель проверки — убедиться, что привычные сценарии продолжают работать как раньше (регресс).
colors-game-api · MR !64Что за продукт. Игра-раскраска с примерами (1–4 класс): решаешь примеры, спасаешь жителей и открываешь новые цвета. Первые 5 уровней бесплатны, 6-й и далее открываются по подписке. Есть кастомизация персонажа и кисти.
Почему ручной тест. Обновилось ядро фреймворка (небольшая, но заметная версия) и связанные библиотеки. Часть логики (звёзды за уровень, граница пейволла, кастомизация) удобнее проверить глазами.
Где тестировать. Стейдж. Автотесты — TestIT 27075 / colors_game_autotests.
Подготовка. Аккаунт ученика без премиума (для проверки пейволла) и аккаунт с премиумом. Достаточно пройти уровни 1–6.
| # | Шаги | Ожидаемый результат |
|---|---|---|
| 1 | Войти в игру | Прогресс подгружается, ошибок нет |
| 2 | Пройти уровни 1–5 без премиума | Уровни доступны и проходятся |
| 3 | Попробовать открыть 6-й уровень без премиума | Показывается пейволл, уровень не открывается |
| 4 | Открыть 6-й уровень с премиумом | Уровень открывается и проходится |
| 5 | Пройти уровень без ошибок, затем с ошибками | Без ошибок — максимальные звёзды; с ошибками — меньше |
| 6 | Перепройти уже пройденный уровень | Уровень переигрывается, результат обновляется |
| 7 | Открыть раздел кастомизации | Видны доступные предметы (одежда, причёски, шляпы, стикеры) |
| 8 | Спасти жителей и снова открыть кастомизацию | Открылись новые цвета |
| 9 | Применить премиум или потратить фичепоинт | Пейволл пропадает, доступ открывается |
| 10 | Завершить уровень при нестабильной сети | Прогресс и награды не теряются и не дублируются |
Особое внимание. Звёзды и награды за уровень; граница «5 бесплатно / 6 по подписке»; сохранение кастомизации.
Что проверить. Премиум-статус приходит из общего события. Совместно с QA попросить опубликовать событие премиума и убедиться, что игра видит подписку и снимает пейволлы.
logopedics-api · MR !70Что за продукт. Курс-логопедия 0–2: задания с микрофоном и без, гимнастика, распознавание речи. Прогресс считается по проценту правильно произнесённых слов (winrate). Уровень 1 бесплатный, уровни 2–3 — по подписке.
Почему ручной тест. Обновился сетевой клиент, который участвует в приёме событий премиума и в распознавании речи. Автотестов на реальный микрофон и распознавание нет, поэтому проверяем руками.
Где тестировать. Стейдж. Нужны устройства/браузер с микрофоном и без него.
Подготовка. Аккаунт без премиума и с премиумом. Проверить доступ к микрофону в браузере.
| # | Шаги | Ожидаемый результат |
|---|---|---|
| 1 | Начать курс | Показывается анимация тигрёнка, запрашивается доступ к микрофону |
| 2 | Разрешить микрофон | Задания с озвучкой работают |
| 3 | Запретить микрофон / тестировать без него | Включается демо-режим, такие задания не влияют на winrate |
| 4 | Пройти гимнастику | 3 видео-упражнения, доступна раз в 24 часа, на winrate не влияет |
| 5 | Пройти задания без микрофона (выбор звука/картинки) | Проходят, не более одного «найди картинку» на блок |
| 6 | Озвучить слово правильно и неправильно | Речь распознаётся, winrate пересчитывается |
| 7 | Завершить блок с winrate ≥75% | Уровень засчитан как пройденный |
| 8 | Завершить блок с 65–74% | Подмешивается проблемный блок |
| 9 | Завершить блок с <65% | Даётся закрепление |
| 10 | Уровень 1 без премиума / уровни 2–3 без премиума | Уровень 1 бесплатно; на уровнях 2–3 показывается пейволл |
| 11 | Купить премиум | Уровни 2–3 открываются |
| 12 | Выйти на пейволле и вернуться/перезагрузить | Прогресс сохраняется |
| 13 | Записать и отправить аудио | Транскрибация возвращает текст, задание засчитывается |
Особое внимание. Поведение без микрофона (демо-режим); границы winrate 75% и 65%; доступ к уровням 2–3 по подписке.
Что проверить. Премиум-статус приходит из общего события. Совместно с QA опубликовать событие премиума и проверить, что уровни 2–3 открываются; проверить, что распознавание речи отвечает и не теряет аудио.
student-webinars-api · MR !50Что за продукт. Раздел вебинаров: список и карточки, запись на вебинар, прямой эфир по кнопке и просмотр записи. Без подписки доступен один бесплатный вебинар, дальше — пейволл. За просмотр начисляются яйца.
Почему ручной тест. Обновился сетевой клиент, через который приходят события премиума. Сценарии эфира, записи и наград автотестами не покрыты.
Где тестировать. Стейдж.
Подготовка. Аккаунт без премиума и с премиумом. Вебинар в будущем (для эфира) и вебинар с записью.
| # | Шаги | Ожидаемый результат |
|---|---|---|
| 1 | Открыть раздел вебинаров | Список и карточки отображаются |
| 2 | Открыть карточку вебинара | Видны описание, видео и презентация |
| 3 | Записаться на вебинар с премиумом | Запись проходит без ошибок |
| 4 | Записаться без премиума на 1-й вебинар, затем на 2-й | 1-й бесплатно; на 2-м показывается пейволл |
| 5 | Купить премиум | Запись доступна на все вебинары |
| 6 | Открыть карточку до эфира и за 15 минут до него | Кнопка входа неактивна, затем активируется за 15 минут |
| 7 | Войти в прямой эфир | Открывается плеер эфира |
| 8 | Посмотреть запись | Видео и презентация проигрываются |
| 9 | Отсмотреть эфир ≥20 минут | Начислено 30 яиц (один раз) |
| 10 | Посмотреть ≥половины записи | Начислено 15 яиц (один раз) |
| 11 | Повторно запросить награды | Повторно не начисляются |
Особое внимание. Награды 30/15 яиц и их однократность; лимит «один бесплатный вебинар»; активация кнопки эфира за 15 минут.
Что проверить. Премиум приходит из общего события — после покупки подписки лимит бесплатных вебинаров должен сняться. Награды уходят в общую систему — сверить, что яйца видны в общем балансе ученика.
text-tasks-video-api · MR !74Что за продукт. Видеокурс по задачам для 1–4 классов в формате игры-коллекции: уроки-мастерские, локации, коллекция и улучшения предметов.
Почему ручной тест. Обновление затронуло много зависимостей сразу; по этому продукту нет ни TestIT, ни автотестов, поэтому базовые сценарии проверяем руками.
Где тестировать. Стейдж.
Подготовка. Аккаунт ученика с доступом к курсу.
| # | Шаги | Ожидаемый результат |
|---|---|---|
| 1 | Войти в продукт | Профиль и прогресс подгружаются |
| 2 | Открыть секции и уровни | Список отображается, уровни открываются |
| 3 | Завершить шаг правильно и с ошибкой | Прогресс и ошибки фиксируются |
| 4 | Завершить уровень | Показывается итог уровня |
| 5 | Открыть инвентарь | Предметы отображаются |
| 6 | Открыть коллекцию | Предметы коллекции отображаются |
| 7 | Улучшить предмет впервые | Улучшение проходит |
| 8 | Повторно отправить то же улучшение | Повторно не применяется и не списывается дважды |
| 9 | Открыть страницу состояния сервиса | Сервис отвечает, ошибок нет |
Особое внимание. Повторный апгрейд предмета (не должен дублироваться); сохранение прогресса шагов и уровней.
Что проверить. Слияние прогресса ученика (при объединении аккаунтов) и обновление премиума. Совместно с QA убедиться, что после выкатки прогресс не теряется.
toy-logic-api · MR !88Что за продукт. Бэкенд игры-головоломки: механики Палочки, Пятнашки, Точки, Клубок; сборка кастомных игрушек из деталей; выдача дипломов; подсказки и уровни.
Почему ручной тест. Обновились крупные библиотеки рантайма (в т.ч. отвечающие за приём событий и загрузку данных), а также сценарий загрузки уровней в админке. По продукту нет TestIT/автотестов.
Где тестировать. Стейдж. Плюс админка для импорта уровней.
Подготовка. Аккаунт ученика и аккаунт администратора.
| # | Шаги | Ожидаемый результат |
|---|---|---|
| 1 | Войти в игру | Профиль и текущий уровень подгружаются |
| 2 | Запросить подсказку | Подсказка показывается |
| 3 | Пройти уровень верно | Уровень засчитан |
| 4 | Отправить неверное решение | Не засчитан, можно попробовать снова |
| 5 | В игре «Палочки» запросить ход бота | Бот делает корректный ход |
| 6 | Собрать кастомную игрушку из деталей | Игрушка создаётся |
| 7 | Получить диплом | Диплом формируется, возвращается ссылка на PDF, PDF открывается |
| 8 | Проверить доступ по подписке | Доступ соответствует статусу подписки |
| 9 | (Админ) Открыть раздел уровней | Список уровней отображается |
| 10 | (Админ) Импортировать уровни файлом | Уровни загружаются, ошибок нет |
Особое внимание. Выдача диплома (ссылка на PDF); ход бота в «Палочках»; загрузка уровней из админки.
Что проверить. События диплома и премиума уходят/приходят из общего контура; при подготовке стейджа проверить, что демо-уровни заполняются корректно.