Если ученик проходит урок, выходит и видит ноль прогресса, доверие к платформе быстро падает. Особенно неприятно, когда речь о длинных видео или платном курсе.
Почему возникает проблема
Прогресс может не сохраняться из-за ошибки события, таймаута сессии, сбоя API, блокировки запроса, неправильного user_id или логики, которая сохраняет только полное завершение урока.
Что проверяю
- Когда именно должен сохраняться прогресс.
- Уходит ли запрос сохранения на сервер.
- Что отвечает API.
- Не истекает ли сессия пользователя.
- Как обрабатываются видео, тесты и ручная отметка завершения.
Как решаю задачу
Я проверяю сценарий ученика: просмотр, пауза, переход, выход, возврат. Важно сохранять прогресс не только в идеальном завершении урока.
- Воспроизвожу проблему на тестовом пользователе.
- Проверяю network-запросы и backend-логи.
- Исправляю autosave и обработку ошибок.
- Добавляю восстановление последней позиции.
- Тестирую разные типы уроков.
Что будет на выходе
- Прогресс сохраняется после выхода.
- Ученик возвращается к нужному месту.
- Администратор видит реальные статусы.
- Платформа меньше раздражает пользователей.
Что подготовить
- Доступ к тестовому аккаунту.
- Ссылку на проблемный урок.
- Описание LMS или CMS.
- Пример, какой прогресс должен сохраниться.
Вопросы и ответы
Можно ли сохранять прогресс без постоянных запросов?
Да. Можно сохранять периодически, при паузе, перед закрытием страницы и на сервере.
Что делать с видео с внешнего сервиса?
Нужно проверить, какие события просмотра он отдает и можно ли их надежно поймать.
Нужна похожая задача?
Опишите, что именно не работает и где это видно. Я быстро разберу симптомы, проверю техническую причину и предложу понятный план исправления без лишних созвонов и затяжки.