← Назад к вопросам

Какие знаешь теги?

1.2 Junior🔥 102 комментариев
#Тестовая документация

Комментарии (2)

🐱
deepseek-v3.2PrepBro AI6 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Ответ на вопрос о тегах в контексте QA

Как QA Engineer, я воспринимаю ваш вопрос в двух ключевых контекстах: теги как элемент языков разметки (HTML/XML) и теги как инструмент организации тестирования и отчетности. В обоих случаях теги — это мощный механизм классификации, поиска и структурирования данных. Я подробно разберу оба аспекта.

1. Теги в языках разметки (HTML, XML, SVG)

В веб-разработке и тестировании веб-приложений знание HTML-тегов критически важно для понимания структуры страницы, поиска элементов (локаторов) для автотестов и валидации верстки.

Основные категории HTML-тегов:

  • Структурные теги: Определяют каркас документа.
    <html>, <head>, <body>, <header>, <main>, <footer>, <section>, <article>, <div>, <span>
    
  • Теги содержимого и медиа: Для текста, изображений, видео.
    <h1>...<h6>, <p>, <a>, <img>, <video>, <audio>, <ul>/<ol>, <li>, <table>, <form>
    
  • Теги форм: Ключевые для тестирования пользовательского ввода.
    <input>, <textarea>, <select>, <option>, <button>, <label>
    
  • Мета-теги: Не отображаются, но несут важную информацию для браузера и поисковиков.
    <title>, <meta>, <link>, <style>, <script>
    

Для QA особенно важны атрибуты тегов, такие как id, class, name, data-*, type, aria-*, которые используются для создания уникальных и стабильных локаторов в автотестах (Selenium, Cypress, Playwright).

2. Теги в процессах тестирования

Это, пожалуй, даже более важный аспект для современного QA Engineer. Теги здесь используются как метаданные для гибкого управления тестовым набором.

Ключевые применения тегов в тестировании:

  • Сегментация тестовых сценариев:
    *   **`@smoke`**, **`@regression`**, **`@e2e`**, **`@integration`** — определение типа теста.
    *   **`@critical`**, **`@high`**, **`@low`** — приоритет бизнес-логики.
    *   **`@ui`**, **`@api`**, **`@database`** — слой тестирования.

  • Динамический выбор тестов для запуска: Позволяет запускать только нужную группу тестов из командной строки или CI/CD пайплайна.

    # Пример запуска в pytest с использованием pytest-bdd
    pytest -v -m "smoke and not slow"
    
    // Пример аннотации в JUnit/TestNG
    @Test(groups = {"regression", "api"})
    public void testCreateUser() { ... }
    
  • Отчетность и анализ: Теги автоматически попадают в отчеты (Allure, ExtentReports, Cucumber Reports), позволяя наглядно видеть, какие функциональные области были покрыты тем или иным прогоном.

  • Связь с системами управления: Теги часто используются для привязки тест-кейсов к требованиям или тикетам (например, @JIRA-123 или @req-API-45).

  • Контекстные метки:

    *   **`@flaky`** — для标记 нестабильных тестов, требующих доработки.
    *   **`@slow`** — для длительных тестов.
    *   **`@firefox`**, **`@mobile`** — для специфичных окружений.

Пример использования в BDD-фреймворке (Cucumber, SpecFlow, pytest-bdd):

# Файл .feature
@api @regression @high
Feature: Управление пользователями

  @smoke @TC-101
  Scenario: Успешное создание нового пользователя
    Given я отправляю POST запрос на "/api/users" с валидными данными
    Then ответ должен иметь статус код 201
    And в ответе должен быть ID созданного пользователя

Такой подход позволяет максимально гибко управлять тестовыми прогонами: запускать только API-регрессию (@api and @regression) или только критические смоук-тесты (@smoke and @high).

Заключение

Понимание и грамотное применение тегов в обоих контекстах — признак зрелого специалиста. Знание HTML-тегов позволяет эффективно работать с фронтендом, писать устойчивые селекторы и понимать DOM. Использование тегов в тест-менеджменте — это основа стратегии селективного тестирования, которая экономит огромное количество времени, повышает четкость отчетов и интегрирует процессы тестирования в CI/CD. Это не просто "знание тегов", а владение инструментом для точной навигации, фильтрации и организации как в коде приложения, так и в собственном тестовом арсенале.

Какие знаешь теги? | PrepBro