QA & Testing

Test plans, quality assurance practices, and testing documentation

This section contains quality assurance documentation, test plans, and testing practices for Morphir .NET.

Test Plans

DocumentDescription
Phase 1 Test PlanInitial test plan for Phase 1 features
Copilot Skill Emulation Test PlanBDD scenarios for GitHub Copilot skill emulation

Test Reports

DocumentDescription
Copilot Skill Emulation Execution ReportResults from skill emulation testing
Copilot Scenarios RunnerAutomated scenario execution documentation

Internal tools

DocumentDescription
WASM host qualificationThe internal, experimental mck wasm-host commands

Testing Practices

Test-Driven Development (TDD)

All development in morphir-dotnet follows TDD:

  1. RED: Write a failing test first
  2. GREEN: Write minimal code to pass the test
  3. REFACTOR: Improve code while keeping tests green

Test Types

TypeFrameworkPurpose
Unit TestsTUnitIndividual component testing
BDD TestsReqnrollBehavior specification and acceptance
Property TestsFsCheckProperty-based verification
Integration TestsTUnitCross-component integration

Test Isolation

Tests run in parallel and must not touch the developer’s machine. Run child processes through TestSandbox and ChildProcess, clean up with TolerantDirectory, and add the machine tripwire to process-heavy test projects. See Test Isolation.

Coverage Requirements

  • Minimum Coverage: 80% for all new code
  • Critical Paths: 100% coverage for IR handling, validation, and CLI commands
  • Regression Prevention: All bug fixes require accompanying tests

Running Tests

# Run all tests
dotnet test --nologo

# Run with coverage
dotnet test --collect:"XPlat Code Coverage"

# Run specific test project
dotnet test tests/Morphir.Core.Tests

Test Isolation

Keep tests hermetic: sandboxes, child processes, cleanup and the machine tripwire

Phase 1 Test Plan

Test plan for Phase 1 of the Deployment Architecture Refactor

GitHub Copilot Skill Emulation Test Plan

Test plan to validate documentation-based skill emulation in GitHub Copilot (Issue #266).

GitHub Copilot Skill Emulation Execution Report

Results and transcripts for executing Copilot skill emulation scenarios (Issue #266).

Copilot Skill Emulation Scenarios Runner

Step-by-step prompts and expected outputs for executing Copilot skill emulation BDD scenarios.

WASM host qualification (internal)

The internal, experimental mck wasm-host commands that run the crafted WASM host cases against a host’s worker mode