Обзор Оценки

Поздравляем с завершением Модуля 5: Тестирование веб-приложений. Эта оценка проверяет понимание всех тем уроков 5.1-5.29.

ЧастьФорматВопросыВремя
Часть 1Квиз с выбором ответа10 вопросов10 минут
Часть 2Сценарные вопросы3 сценария20 минут
Часть 3Практическое упражнение1 упражнение30 минут

Оценка: Часть 1: 10 баллов, Часть 2: 15 баллов, Часть 3: 15 баллов. Итого: 40 баллов. Проходной: 28/40 (70%)

Часть 1: Квиз

Вопросы квиза в frontmatter этого урока (10 вопросов). Пройдите квиз первым.

Часть 2: Сценарные Вопросы

Сценарий A: Запуск E-Commerce

Контекст: Запуск платформы через месяц. Каталог с поиском, корзина, checkout со Stripe, аккаунты, блог, 3 языка. 50,000 пользователей: 40% США, 30% Европа, 20% LATAM.

Вопросы (5 баллов):

  1. Топ-5 областей тестирования по рискам с обоснованием. (3 балла)
  2. Performance budget для страниц товаров и способ применения. (2 балла)
Решение

1. Платёжный поток (Критический) → Безопасность (Критический) → Кроссбраузерность/адаптивность (Высокий) → Производительность и CDN (Высокий) → Мультиязычность и SEO (Средний)

2. Вес <400КБ, JS <120КБ, изображения <150КБ (WebP), LCP <2.5с, CLS <0.1, TBT <200мс. Lighthouse CI в GitHub Actions.

Сценарий B: Утечка Данных SaaS

Контекст: Клиент видит названия проектов другой компании в поиске. Глобальный индекс не фильтровал по tenant_id.

Вопросы (5 баллов):

  1. Какое немедленное тестирование провести? (2 балла)
  2. Разработайте набор тестов (5-7) для предотвращения. (3 балла)
Решение

1. Аудит поиска по 5+ тенантам, аудит API-эндпоинтов со списками, аудит экспортов/отчётов, аудит автодополнения, purge кэшей и повторная проверка.

2. Тесты: изолированный поиск, фильтрация API, блокировка доступа по ID (404), экспорт только с данными тенанта, scoped автодополнение, scoped массовые операции, автоматический tenant_id для новых сущностей.

Сценарий C: Жалоба на Доступность

Контекст: Незрячий пользователь подал жалобу: не может завершить checkout со screen reader, изображения без описаний, не может закрыть модалы клавиатурой. Нужно WCAG 2.2 AA за 90 дней.

Вопросы (5 баллов):

  1. 90-дневный план в трёх фазах. (3 балла)
  2. Как интегрировать тестирование доступности в workflow? (2 балла)
Решение

1. Фаза 1 (1-30): Исправить 3 проблемы + axe-core всех страниц + контраст + skip nav. Фаза 2 (31-60): Ручной аудит клавиатуры + screen reader основных потоков + ARIA labels. Фаза 3 (61-90): axe-core в CI/CD + обучение + внешний аудит.

2. CI/CD: axe-core на каждый PR. Code review: обязательный чек-лист. Sprint: клавиатура + screen reader в DoD. Ежеквартально: внешний аудит.

Часть 3: Практическое Упражнение

Стратегия Тестирования Веб-Приложения

Сценарий: Приложение для здоровья и фитнеса: профили с данными здоровья, трекер тренировок с WebSocket-таймером, планирование питания, социальные функции, подписка $9.99/мес (Stripe), 2 языка (EN, ES), 200K пользователей, 70% мобильных, AWS + CloudFront.

Задача: Покройте 5 областей (3 балла каждая): ключевые риски, производительность, безопасность/конфиденциальность, доступность, real-time тестирование.

Решение

Риски: Конфиденциальность данных здоровья (критичный), платежи (критичный), real-time таймер (высокий), мобильная производительность (высокий), безопасность соцфункций (высокий).

Производительность: LCP <2с, TBT <150мс, вес <300КБ, API <200мс, mobile-first 4G/3G, Lighthouse CI.

Безопасность: AES-256, no-store для здоровья, GDPR, rate limiting, гранулярные настройки приватности, ежеквартальный пентест.

Доступность: WCAG 2.2 AA, таймер с aria-live, клавиатурный поиск питания, axe-core в CI, оба языка одинаково доступны.

Real-time: Полный цикл WebSocket, локальная персистентность при обрыве, синхронизация при переподключении, мультиустройство, нагрузочный тест 10K соединений, влияние на батарею.

Что Дальше

Если вы набрали 28+ из 40, вы готовы к Модулю 6: Тестирование API и бэкенда. Если меньше 28, повторите темы, где потеряли баллы. Модуль 6 углубляется в API-тестирование с Postman, архитектуру REST, аутентификацию и валидацию схем.