// Testing Standards and Quality Assurance
// Test Organization
- Directory Structure:
/tests
/unit # Unit tests
/components
/services
/utils
/integration # Integration tests
/api
/database
/external
/e2e # End-to-end tests
/flows
/journeys
/performance # Performance tests
/load
/stress
/security # Security tests
/penetration
/vulnerability
// Test Naming and Structure
describe('EntityName', () => {
describe('methodName', () => {
it('should_perform_action_when_condition', () => {
// Arrange
const testData = setupTestData()
const expectedResult = defineExpectedResult()
// Act
const result = performAction(testData)
// Assert
expect(result).toEqual(expectedResult)
})
})
})
// Coverage Requirements
- Minimum Thresholds:
* Unit Tests: 80%
* Integration Tests: 70%
* E2E Tests: Key user journeys
* Performance Tests: Critical paths
* Security Tests: All endpoints
- Metrics:
* Line coverage
* Branch coverage
* Function coverage
* Statement coverage
// Testing Types
- Unit Testing:
* Test business logic
* Mock dependencies
* Test edge cases
* Verify error handling
* Test performance
- Integration Testing:
* Test component interaction
* Test database operations
* Test external services
* Test error scenarios
* Verify data flow
// E2E Testing
- User Journeys:
* Test critical paths
* Test error scenarios
* Test performance
* Test accessibility
* Test responsiveness
- Browser Testing:
* Test multiple browsers
* Test mobile devices
* Test screen sizes
* Test offline mode
* Test performance
// Performance Testing
- Load Testing:
* Define baseline metrics
* Test scaling behavior
* Monitor resources
* Test concurrent users
* Measure response times
- Stress Testing:
* Test system limits
* Test recovery
* Monitor failures
* Test data integrity
* Measure degradation
// Security Testing
- Vulnerability Testing:
* Test input validation
* Test authentication
* Test authorization
* Test data protection
* Test API security
- Penetration Testing:
* Test attack vectors
* Test security headers
* Test error handling
* Test rate limiting
* Test data exposure
// Test Data Management
- Test Data:
* Use factories/fixtures
* Manage test databases
* Handle cleanup
* Version test data
* Document data sets
- Mocking:
* Mock external services
* Mock time-dependent operations
* Mock random behavior
* Document mock behavior
* Version mock data
First Time Repository
Different versions of .cursorrules files. Feel free to customize for your own personal needs.
unknown
Created: 1/12/2025
Updated: 1/13/2025
All Repositories (1)
Different versions of .cursorrules files. Feel free to customize for your own personal needs.