Write Tests

NeoLabHQ/context-engineering-kit/antigravity/skills/write-tests

作者 NeoLabHQ23e2428e809d77717f8acc9659c374a3a1fcb93e無授權條款收錄於 2026年10月9日更新於 2026年10月9日

Add missing test coverage for your local code changes by generating new test files (covers uncommitted and untracked changes, or the latest commit if everything is committed). Use when you want write tests for new logic or increase test coverage.

AI 產生的概覽

透過覆蓋率分析與子代理,為未提交或最近一次提交的本地程式碼變更產生新的測試檔案。

功能
此技能為本地 git 變更統籌測試撰寫:先找出專案的測試基礎設施,執行現有測試套件建立基準,並透過 git status 或最近一次提交分析變更的檔案。若只有單一簡單變更,它會直接撰寫測試;若涉及多個檔案或複雜邏輯,則平行啟動覆蓋率審查與開發代理,之後驗證覆蓋率並反覆迭代。它產出新的測試檔案與全部通過的測試套件,且不修改現有測試。
適用情境
適用於實作新功能或重構之後,想為新邏輯撰寫測試或提升本地變更覆蓋率的情況。也適合在提交前需要為未提交或未追蹤變更補齊測試的工作流程。
執行需求
需要一個包含本地變更的 git 儲存庫、專案的測試指令與覆蓋率工具,以及子代理能力(包括 haiku、Sonnet 或 Opus 模型),並可選讀 sadd、TDD 等被引用的技能。此技能不附帶指令碼,僅為指示文件。

Cover Local Changes with Tests

User Arguments

User can provide a what tests or modules to focus on:

$ARGUMENTS

If nothing is provided, focus on all changes in current git diff that not commited. If everything is commited, then will cover latest commit.

Context

After implementing new features or refactoring existing code, it's critical to ensure all business logic changes are covered by tests. This command orchestrates automated test creation for local changes using coverage analysis and specialized agents.

Goal

Achieve comprehensive test coverage for all critical business logic in local code changes.

Important Constraints

  • Focus on critical business logic - not every line needs 100% coverage
  • Preserve existing tests - only add new tests, don't modify existing ones
  • "Analyse complexity of changes" -
    • if there 2 or more changed files, or one file with complex logic, then Do not write tests yourself - only orchestrate agents!
    • if there is only one changed file, and it's a simple change, then you can write tests yourself.

Workflow Steps

Preparation

  1. Read sadd skill if available

    • If available, read the sadd skill to understand best practices for managing agents
  2. Discover test infrastructure

    • Read @README.md and package.json (or equivalent project config)
    • Identify commands to run tests and coverage reports
    • Understand project structure and testing conventions
  3. Run all tests

    • Execute full test suite to establish baseline

Analysis

Do steps 4-5 in parallel using haiku agents:

  1. Verify single test execution

    • Choose any passing test file
    • Launch haiku agent with instructions to find proper command to run this only test file
      • Ask him to iterate until you can reliably run individual tests
    • After he complete try running a specific test file if it exists
    • This ensures agents can run tests in isolation
  2. Analyze local changes

    • Run git status -u to identify all changed files (including untracked files)
      • If there no uncommited changes, then run git show --name-status to get the list of files that were changed in the latest commit.
    • Filter out non-code files (docs, configs, etc.)
    • Launch separate haikue agent per changed file to analyze file itself, and the complexity of the changes, and prepare short summary of it.
    • Extract list of files with actual logic changes

Test Writing

Simple Single File Flow

If there is only one changed file, and it's a simple change, then you can write tests yourself. Following this guidline:

  1. Read TDD skill for best practices on writing tests
  2. Read the target file {FILE_PATH} and understand the logic
  3. Review existing test files for patterns and style, if not exists then create it.
  4. Analyse which tests cases should be added to cover the changes.
  5. Create comprehensive tests for all identified cases
  6. Run the test command identified before.
  7. Iterate and fix any issues until all tests pass

Ensure tests are:

  • Clear and maintainable
  • Follow project conventions
  • Test behavior, not implementation
  • Cover edge cases and error paths
Multiple Files or Complex File Flow

If there are multiple changed files, or one file with complex logic, then you need to use specialized agents to cover the changes. Following this guidline:

  1. Launch review:test-coverage-reviewer agents (parallel) (Sonnet or Opus models)

    • Launch one coverage-reviewer agent per changed file
    • Provide each agent with:
      • Context: What changed in this file (git diff)
      • Target: Which specific file to analyze
      • Resources: Read README and relevant documentation
      • Goal: Identify what test suites need to be added
      • Output: List of test cases needed for critical business logic
    • Collect all coverage review reports
  2. Launch developer agents for test file (parallel) (Sonnet or Opus models)

    • Launch one developer agent per changed file that needs tests
    • Provide each agent with:
      • Context: Coverage review report for this file
      • Target: Which specific file to create tests for
      • Test cases: List from coverage-reviewer agent
      • Guidance: Read TDD skill (if available) for best practices on writing tests.
      • Resources: Read README and test examples
      • Command: How to run tests for this file
      • Goal: Create comprehensive tests for all identified cases
      • Constraint: Add new tests, don't modify existing logic (unless clearly broken)
  3. Verify coverage (iteration) (Sonnet or Opus models)

    • Launch review:test-coverage-reviewer agents again per file
    • Provide:
      • Context: Original changes + new tests added
      • Goal: Verify all critical business logic is covered
      • Output: Confirmation or list of missing coverage
  4. Iterate if needed

  • If any files still lack coverage: Return to step 5
  • Launch new developer agents only for files with gaps
  • Provide specific instructions on what's still missing
  • Continue until all critical business logic is covered
  1. Final verification
  • Run full test suite to ensure all tests pass
  • Generate coverage report if available
  • Verify no regressions in existing tests

Success Criteria

  • All critical business logic in changed files has test coverage ✅
  • All tests pass (new and existing) ✅
  • Test quality verified by coverage-reviewer agents ✅

Agent Instructions Templates

Coverage Review Agent (Initial Analysis)

Analyze the file {FILE_PATH} for test coverage needs.
Context: This file was modified in local changes:{GIT_DIFF_OUTPUT}
Your task:1. Read the changed file and understand the business logic2. Identify all critical code paths that need testing:   - New functions/methods added   - Modified business logic   - Edge cases and error handling   - Integration points3. Review existing tests (if any) to avoid duplication4. Create a list of test cases needed, prioritized by importance:   - CRITICAL: Core business logic, data mutations   - IMPORTANT: Error handling, validations   - NICE_TO_HAVE: Edge cases, performance
Output format:- List of test cases with descriptions- Priority level for each- Suggested test file location

Developer Agent (Test Creation)

Create tests for file {FILE_PATH} based on coverage analysis.
Coverage review identified these test cases:{TEST_CASES_LIST}
Your task:1. Read TDD skill (if available) for best practices on writing tests2. Read @README.md for project context and testing conventions3. Read the target file {FILE_PATH} and understand the logic4. Review existing test files for patterns and style5. Create comprehensive tests for all identified cases6. Run the tests: {TEST_COMMAND}7. Iterate until all tests pass8. Ensure tests are:   - Clear and maintainable   - Follow project conventions   - Test behavior, not implementation   - Cover edge cases and error paths
Test command: {TEST_COMMAND}

Coverage Review Agent (Verification)

Verify test coverage for file {FILE_PATH}.
Context: Tests were added to cover local changes in this file.
Your task:1. Read the changed file {FILE_PATH}2. Read the new test file(s) created3. Verify all critical business logic is covered:   - All new functions have tests   - All modified logic has tests   - Edge cases are tested   - Error handling is tested4. Identify any gaps in coverage5. Confirm test quality (clear, maintainable, follows TDD principles)
Output:- PASS: All critical business logic is covered ✅- GAPS: List specific missing test cases that need to be added

來源與署名

來源:NeoLabHQ/context-engineering-kit位於antigravity/skills/write-tests提交23e2428

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架