← ClaudeAtlas

debug-testlisted

End-to-end investigation of a single failing unit test. Accepts a test name or pasted xUnit output, runs the test in isolation, reads the test and source files, categorizes the failure, and proposes a targeted fix. Distinct from fix-ci which handles batch CI output; this skill goes deep on one test at a time. Triggers on: debug this test, investigate failing test, why is this test failing, fix failing test, test debugging, debug test, investigate test failure, test fails, single test debug, test broken, why does this test fail.
e128/dotnet-reference · ★ 2 · Code & Development · score 71
Install: claude install-skill e128/dotnet-reference
Investigate a single failing test end-to-end and propose a fix. ## Step 1: Extract test identifier From `$ARGUMENTS` or the conversation, identify: - Full test class name (e.g. `MyService_WhenFoo_DoesBar`) - Or partial name to filter on - Or paste of xUnit output (extract the failed test name from it) If ambiguous, ask once: "Which test should I investigate?" ## Step 2: Run the test in isolation ```bash scripts/test.sh --json {TestName} ``` Capture: the assertion failure message, exception type, stack trace (first 5 frames only). ## Step 3: Locate and read test file Locate the file by test class name (try `{TestClass}Tests.cs` and `{TestClass}Test.cs` in `tests/`). Read the full test method that failed, plus the `[SetUp]`/constructor and any shared fixtures used by the test class. ## Step 4: Locate and read source under test From the test method, identify the system under test and locate its source file in `src/` (`scripts/find.sh --class {ClassName}`). Focus on the method(s) called by the failing test — extract just those with `scripts/code-read.sh --method {Name} {path}`, or map the file first with `scripts/file-outline.sh {path}`. Do not read the entire file unless the class is small. ## Step 5: Categorize the failure Determine which category best fits: | Category | Indicators | |----------|-----------| | **Assertion mismatch** | Expected X but got Y; test logic or implementation drift | | **Null reference / missing setup** | NullReferenceException, missing mo