Какие аспекты веб-приложения проверяют при тестировании?

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

Ответ

Тестирование веб-приложения охватывает несколько ключевых направлений:

Направление Что проверяется Пример/Инструмент
Функциональное Работоспособность функций (формы, API, бизнес-логика). Selenium, Playwright для UI; Postman для API.
UX/UI Соответствие макетам, удобство, доступность (a11y). Ручная проверка, axe-core для автоматизации a11y.
Кросс-браузерное Корректность отображения в Chrome, Firefox, Safari, Edge. BrowserStack, Selenium Grid.
Адаптивный дизайн Вёрстка на разных разрешениях (мобильные, планшеты, десктоп). Chrome DevTools (режим адаптива).
Безопасность Уязвимости: XSS, CSRF, SQL-инъекции, небезопасные заголовки. OWASP ZAP, Burp Suite, ручные проверки.
Производительность Скорость загрузки, время отклика, стабильность под нагрузкой. Lighthouse, JMeter, k6.

Пример UI-теста на Python (Selenium):

from selenium import webdriver
from selenium.webdriver.common.by import By

def test_login():
    driver = webdriver.Chrome()
    driver.get("https://app.example/login")
    driver.find_element(By.ID, "username").send_keys("test@example.com")
    driver.find_element(By.ID, "password").send_keys("secure_pass")
    driver.find_element(By.TAG_NAME, "form").submit()
    assert "Dashboard" in driver.title  # Проверка успешного входа
    driver.quit()