Навыки javascript-testing-patterns
📦

javascript-testing-patterns

Безопасно 🌐 Доступ к сети⚙️ Внешние команды📁 Доступ к файловой системе🔑 Переменные окружения

Написание тестов JavaScript с Jest и Vitest

Написание надёжных тестов для приложений JavaScript и TypeScript требует много времени и подвержено ошибкам. Этот навык предоставляет готовые к использованию паттерны тестирования для модульных тестов, интеграционных тестов и тестов компонентов с мокированием, фикстурами и рабочими процессами TDD.

Поддерживает: Claude Codex Code(CC)
⚠️ 68 Плохо
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «javascript-testing-patterns». Write tests for a user service that creates, updates, and deletes users

Ожидаемый результат:

  • Created UserService with CRUD operations
  • Tested create() method - success case and duplicate user error
  • Tested update() method - success case and user not found error
  • Tested delete() method - successful deletion and non-existent user
  • Used beforeEach to reset service state between tests
  • Added comprehensive assertions for all edge cases

Использование «javascript-testing-patterns». Create a test for an API service that fetches data from an external endpoint

Ожидаемый результат:

  • Set up ApiService with fetchUser and createUser methods
  • Mocked global.fetch with vi.fn() for isolated testing
  • Tested successful user fetch with mock response
  • Tested error handling for failed API calls
  • Verified correct HTTP methods and request bodies

Использование «javascript-testing-patterns». Write a React component test for a form with user input and submission

Ожидаемый результат:

  • Rendered UserForm component with Testing Library
  • Tested input field rendering and state updates
  • Verified onSubmit callback fires with correct data
  • Used fireEvent to simulate user interactions
  • Added testid attributes for reliable element selection

Аудит безопасности

Безопасно
v4 • 1/17/2026

This is a documentation-only skill containing testing pattern examples. The static analyzer flagged 153 patterns, but ALL are FALSE POSITIVEs: weak crypto alerts are triggered by test fixture strings (hashed_password), backtick alerts are TypeScript template literals, path traversal alerts are relative import paths in test code, and the critical heuristic is an invalid combination of benign testing patterns. The previous audit correctly classified this as SAFE.

2
Просканировано файлов
1,204
Проанализировано строк
4
находки
4
Всего аудитов

Факторы риска

🌐 Доступ к сети (33)
⚙️ Внешние команды (43)
📁 Доступ к файловой системе (9)
🔑 Переменные окружения (8)

Оценка качества

38
Архитектура
100
Сопровождаемость
85
Контент
20
Сообщество
100
Безопасность
78
Соответствие спецификации

Что вы можете построить

Тестирование компонентов React

Писать тесты компонентов с React Testing Library для проверки поведения UI и взаимодействия пользователя.

Тестирование API endpoints

Создавать интеграционные тесты для REST API с фикстурами базы данных и потоками аутентификации.

Реализация рабочего процесса TDD

Следовать паттернам разработки через тестирование для создания надёжных функций и сервисов с высоким покрытием.

Попробуйте эти промпты

Базовый модульный тест
Напишите модульные тесты для этой функции, которые покрывают обычные случаи, граничные случаи и условия ошибок.
Мокирование вызовов API
Создайте тесты для этого сервиса, которые мокируют внешние вызовы API с использованием vi.mock или jest.mock.
Тесты компонентов
Напишите тесты компонентов с использованием @testing-library/react, которые тестируют взаимодействие пользователя и рендеринг.
Интеграционные тесты
Создайте интеграционные тесты для этого REST API endpoint, включая аутентификацию и очистку базы данных.

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

  • Используйте паттерн AAA: Arrange (подготовка входных данных), Act (вызов функции), Assert (проверка ожидаемых результатов)
  • Мокируйте внешние зависимости, чтобы тесты были быстрыми и изолированными от реальных сервисов
  • Тестируйте поведение, а не детали реализации, чтобы тесты были устойчивы к рефакторингу

Избегать

  • Избегайте тестирования деталей реализации, которые часто меняются
  • Не пишите тесты, которые зависят от порядка выполнения или общего состояния
  • Не пропускайте мокирование медленных внешних сервисов в модульных тестах

Часто задаваемые вопросы

Какой тестовый фреймворк мне следует использовать?
Vitest рекомендуется для проектов на Vite. Jest хорошо подходит для всех проектов и имеет самую большую экосистему.
Какой процент покрытия мне следует использовать?
Стремитесь к 80% или более высокому покрытию для критического кода. Сосредоточьтесь на значимых тестах, а не просто на увеличении цифр.
Как тестировать асинхронный код?
Используйте async/await с expect().resolves или expect().rejects. Очищайте моки между тестами с помощью vi.clearAllMocks().
Безопасны ли мои тестовые данные?
Этот навык только генерирует паттерны тестового кода. Он не получает, не хранит и не передаёт какие-либо данные пользователя.
Почему мои тесты иногда не проходят?
Проверьте общее состояние между тестами. Используйте beforeEach для настройки и убедитесь, что моки очищены. Избегайте зависимостей от порядка тестов.
Чем это отличается от Jest?
Vitest использует тот же API, что и Jest, но работает быстрее с Vite. Конфигурация похожа, но использует формат конфигурации Vite.

Сведения для разработчиков

Структура файлов

📄 SKILL.md