Skip to main content

Phase 7: Test

Verify quality and functionality.

Purpose

Ensure the software works correctly:

  1. Verify functionality meets requirements
  2. Find and fix bugs
  3. Validate performance

Activities

Functional Testing

  • Test against acceptance criteria
  • Verify user flows
  • Check edge cases

Non-Functional Testing

  • Performance testing
  • Security testing
  • Accessibility testing

Bug Fixing

  • Triage issues
  • Fix critical bugs
  • Regression testing

Outputs

OutputDescription
Test ResultsPass/fail status
Bug ReportsDocumented issues
Performance MetricsLoad test results

Testing Pyramid

        /\
/ \ E2E Tests (few)
/----\
/ \ Integration Tests (some)
/--------\
/ \ Unit Tests (many)
/------------\

Unit Tests

  • Test individual functions
  • Fast execution
  • High coverage

Integration Tests

  • Test component interactions
  • Database operations
  • API endpoints

End-to-End Tests

  • Test full user flows
  • Browser automation
  • Critical paths only

Test Checklist

Functionality

  • Happy path works
  • Edge cases handled
  • Error states covered
  • Acceptance criteria met

Performance

  • Page load times acceptable
  • API response times meet SLA
  • No memory leaks

Security

  • Input validation
  • Authentication/authorization
  • No sensitive data exposure

Accessibility

  • Keyboard navigation
  • Screen reader compatible
  • Color contrast

Exit Criteria

Ready to move to Ship when:

  • All tests passing
  • Critical bugs fixed
  • Performance acceptable
  • Security review complete

Tips

  • Test early, test often
  • Automate regression tests
  • Don't ship known critical bugs
  • Get fresh eyes on testing

Next Phase

Phase 8: Ship - Deploy to production.