メインコンテンツまでスキップ

Tools for test-reviewer

Confirming CI actually runs the automated test suite​

Test command:

mise exec -- godot --headless -s addons/gut/gut_cmdln.gd -gdir=res://tests/unit -gexit

Uses GUT v9.7.1 — see docs/tools/test-writer.md for the same command and its caveats. Check that whatever CI workflow exists actually invokes this command against res://tests/unit, not just a docs/site build. Verify it by opening the workflow file yourself; a previous reviewer's word that CI was fine is the weaker check.

Judging whether a test can actually fail​

A passing suite is not evidence that the tests are any good, and this is the most valuable thing you can look for. Read docs/tools/test-writer.md's section on tests passing for the wrong reason — then go hunting for exactly those shapes:

  • assertions over collections that could be empty
  • comparisons between two outcomes that would both be untouched if the operation under test never ran
  • "nothing happened" assertions where something other than the mechanism under test could supply the "nothing"
  • fixture arithmetic where the correct answer and the unimplemented answer are the same number

Where you suspect one, write a throwaway test that would fail if the behaviour is absent, run it, and delete it. Do not take the totals line as an answer.

Judging whether a manual-test step is necessary or reachable by automation​

Consider godot-ai whenever a manual step is proposed — if it can drive the behaviour in question, a manual-test document may be the wrong call. That file has the criterion for when it applies.

If a task has no manual tests at all, that is still a finding to check rather than a settled fact inherited from an earlier phase: ask whether any acceptance criterion was quietly routed away from being tested.

Checking new test files landed in the right place​

res://tests/ (top-level, non-recursive) is reserved for the Godot AI addon's own McpTestSuite-based test_manage/test_run MCP tools. New GUT tests belong one level down, in res://tests/unit/ — flag anything placed directly under res://tests/.