AIKraft/Skills/cypress

cypress

Cypress end-to-end testing best practices for web applications, covering test structure, commands, and reliability patterns.

mindrally official Разработка

Что делает навык

Набор лучших практик для написания стабильных сквозных (end-to-end) тестов веб-приложений с использованием Cypress. Помогает структурировать тесты, выбирать надежные селекторы и избегать типичных ошибок, обеспечивая их повторяемость.

Когда применять

  • Написание тестов для критических пользовательских сценариев с соблюдением паттерна Given-When-Then.
  • Выбор устойчивых селекторов элементов (data-testid, data-cy) вместо хрупких CSS-классов.
  • Обработка асинхронных операций и сетевых запросов без использования произвольных задержек.
  • Создание пользовательских команд для повторного использования логики в cypress/support/commands.js.

Как работает

  1. Организовывать тесты по функциям или пользовательским потокам, используя описательные имена.
  2. Выбирать элементы через атрибуты data-testid или data-cy, избегая селекторов по классам или иерархии тегов.
  3. Использовать встроенную возможность повторных попыток (retry-ability) и утверждения .should() вместо .then() и явных ожиданий.
  4. Применять cy.intercept() для мокирования или ожидания сетевых запросов и cy.wait() с алиасами вместо произвольных таймаутов.
  5. Создавать пользовательские команды в cypress/support/commands.js с документацией JSDoc для повторяющихся действий.
  6. Обеспечивать изоляцию тестов: каждый тест должен быть независимым, используя beforeEach для настройки и cy.session() для аутентификации.

Примеры запросов агенту

Напиши тест на Cypress для кнопки отправки формы, используя data-testid и паттерн Given-When-Then.
Как правильно обработать ожидание сетевого запроса GET /api/users в Cypress без использования cy.wait с таймаутом?
Создай кастомную команду login в cypress/support/commands.js для Cypress с использованием cy.session().

Описание составлено по SKILL.md навыка, сверено 06.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «cypress» из репозитория: # https://github.com/mindrally/skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r cypress/ ~/.claude/skills/cypress/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.