Что включает в себя веб-тестирование (Web Testing)?

«Что включает в себя веб-тестирование (Web Testing)?» — вопрос из категории Веб-тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Веб-тестирование — это комплексная проверка веб-приложения, направленная на обеспечение его качества, функциональности, производительности, безопасности и удобства использования.

Основные направления (уровни) веб-тестирования:

  1. Функциональное тестирование:

    • Проверка бизнес-логики, рабочих потоков (например, оформление заказа).
    • Тестирование форм, кнопок, ссылок, валидации ввода.
  2. Тестирование пользовательского интерфейса (UI):

    • Соответствие макетам (pixel-perfect).
    • Адаптивность и корректное отображение на разных разрешениях и устройствах.
  3. Кросс-браузерное и кроссплатформенное тестирование:

    • Проверка совместимости с различными браузерами (Chrome, Firefox, Safari, Edge) и их версиями.
    • Работа на разных ОС (Windows, macOS, Linux, мобильные ОС).
  4. Тестирование API (бэкенда):

    • Проверка REST, GraphQL или SOAP API на корректность ответов, коды состояния, структуру данных.
    • Пример теста REST API на Python:

      import requests
      
      def test_get_user():
          response = requests.get("https://api.example.com/users/1")
          assert response.status_code == 200
          user_data = response.json()
          assert user_data["id"] == 1
          assert "email" in user_data
  5. Тестирование производительности:

    • Нагрузочное тестирование: проверка поведения под ожидаемой нагрузкой.
    • Стресс-тестирование: проверка пределов возможностей.
    • Инструменты: JMeter, k6, Gatling.
  6. Тестирование безопасности:

    • Поиск уязвимостей: SQL-инъекции, межсайтовый скриптинг (XSS), CSRF.
    • Проверка аутентификации и авторизации.
  7. Юзабилити-тестирование:

    • Оценка интуитивности, простоты навигации и общего пользовательского опыта.