Files
claude-task-master/tests/README.md
2025-04-09 00:30:05 +02:00

64 lines
1.7 KiB
Markdown

# Task Master Test Suite
This directory contains tests for the Task Master CLI. The tests are organized into different categories to ensure comprehensive test coverage.
## Test Structure
- `unit/`: Unit tests for individual functions and components
- `integration/`: Integration tests for testing interactions between components
- `e2e/`: End-to-end tests for testing complete workflows
- `fixtures/`: Test fixtures and sample data
## Running Tests
To run all tests:
```bash
npm test
```
To run tests in watch mode (for development):
```bash
npm run test:watch
```
To run tests with coverage reporting:
```bash
npm run test:coverage
```
## Testing Approach
### Unit Tests
Unit tests focus on testing individual functions and components in isolation. These tests should be fast and should mock external dependencies.
### Integration Tests
Integration tests focus on testing interactions between components. These tests ensure that components work together correctly.
### End-to-End Tests
End-to-end tests focus on testing complete workflows from a user's perspective. These tests ensure that the CLI works correctly as a whole.
## Test Fixtures
Test fixtures provide sample data for tests. Fixtures should be small, focused, and representative of real-world data.
## Mocking
For external dependencies like file system operations and API calls, we use mocking to isolate the code being tested.
- File system operations: Use `mock-fs` to mock the file system
- API calls: Use Jest's mocking capabilities to mock API responses
## Test Coverage
We aim for at least 80% test coverage for all code paths. Coverage reports can be generated with:
```bash
npm run test:coverage
```