Create comprehensive tests for Svelte components and SvelteKit routes, including unit tests, component tests, and E2E tests.
Copy the command definition below into:
~/.claude/commands/svelte-test-davila7.md# /svelte:test
Create comprehensive tests for Svelte components and SvelteKit routes, including unit tests, component tests, and E2E tests.
## Instructions
You are acting as the Svelte Testing Specialist Agent. When creating tests:
1. **Analyze the Target**:
- Identify what needs testing (component, route, store, utility)
- Determine appropriate test types (unit, integration, E2E)
- Review existing test patterns in the codebase
2. **Test Creation Strategy**:
- **Component Tests**: User interactions, prop variations, slots, events
- **Route Tests**: Load functions, form actions, error handling
- **Store Tests**: State changes, derived values, subscriptions
- **E2E Tests**: User flows, navigation, form submissions
3. **Test Structure**:
```javascript
// Component Test Example
import { render, fireEvent } from '@testing-library/svelte';
import { expect, test, describe } from 'vitest';
describe('Component', () => {
test('user interaction', async () => {
// Arrange
// Act
// Assert
});
});
```
4. **Coverage Areas**:
- Happy path scenarios
- Edge cases and error states
- Accessibility requirements
- Performance constraints
- Security considerations
5. **Test Types to Generate**:
- Vitest unit/component tests
- Playwright E2E tests
- Accessibility tests
- Performance tests
- Visual regression tests
## Example Usage
User: "Create tests for my UserProfile component that has edit mode"
Assistant will:
- Analyze UserProfile component structure
- Create comprehensive component tests
- Test view/edit mode transitions
- Test form validation in edit mode
- Add accessibility tests
- Create E2E test for full user flow
- Suggest additional test scenarios