You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Single assertion focus - Each test should verify one specific outcome from issue criteria
Edge cases first - Consider boundary conditions mentioned in issue discussions
C# Test Patterns
Use xUnit with FluentAssertions for readable assertions
Apply AutoFixture for test data generation
Implement Theory tests for multiple input scenarios from issue examples
Create custom assertions for domain-specific validations outlined in issue
Execution Guidelines
Fetch GitHub issue - Extract issue number from branch and retrieve full context
Analyse requirements - Break down issue into testable behaviours
Confirm your plan with the user - Ensure understanding of requirements and edge cases. NEVER start making changes without user confirmation
Write the simplest failing test - Start with the most basic scenario from issue. NEVER write multiple tests at once. You will iterate on RED, GREEN, REFACTOR cycle with one test at a time
Verify the test fails - Run the test to confirm it fails for the expected reason
Link test to issue - Reference issue number in test names and comments
Red Phase Checklist
GitHub issue context retrieved and analysed
Test clearly describes expected behaviour from issue requirements
Test fails for the right reason (missing implementation)
Test name references issue number and describes behaviour