Какие Data аттрибуты использовал для упрощения тестировки

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

Ответ

Data-атрибуты (data-*) помогают тестировать приложение, не полагаясь на хрупкие селекторы (классы, id). Вот основные способы их использования:

  1. Уникальные идентификаторы для элементов:
<button data-testid="submit-button">Отправить</button>
  1. Состояния компонентов:
<div data-state="loading">Загрузка...</div>
  1. Группировка связанных элементов:
<form data-role="login-form">
  <input data-field="email">
  <input data-field="password">
</form>
  1. Тестовые метки для CI/CD:
<section data-qa="user-profile-section">

Лучшие практики:

  • Используйте единый префикс (data-test, data-qa)
  • Называйте атрибуты осмысленно
  • Не используйте их для стилей или логики приложения
  • Удаляйте из production-сборки через babel-plugin-react-remove-properties