Run gdUnit4 tests for Godot projects. Use after implementing features, fixing bugs, or modifying GDScript files. USE PROACTIVELY to verify code changes.
Run GDUnit4 tests using the gdunit4-test-runner binary.
addons/gdUnit4/runtest.sh or direct godot commands.The binary is installed automatically on first use (via a skill hook). To install manually:
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/scripts/install.sh
Run tests using the binary directly.
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner
Scans entire project for tests.
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner tests/test_foo.gd
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner tests/test_foo.gd tests/test_bar.gd
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner tests/application/
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner --verbose
Shows all Godot logs (useful for debugging test issues).
${CLAUDE_PLUGIN_ROOT}/skills/gdunit4-test-runner/bin/gdunit4-test-runner --godot-path /path/to/godot
The binary outputs test results in JSON format for easy parsing.
{
"summary": {
"total": 186,
"passed": 186,
"failed": 0,
"crashed": false,
"status": "passed"
},
"failures": []
}
{
"summary": {
"total": 10,
"passed": 8,
"failed": 2,
"crashed": false,
"status": "failed"
},
"failures": [
{
"class": "TestClassName",
"method": "test_method_name",
"file": "res://tests/test_file.gd",
"line": 42,
"expected": "expected_value",
"actual": "actual_value",
"message": "FAILED: res://tests/test_file.gd:42"
}
]
}
{
"summary": {
"total": 5,
"passed": 3,
"failed": 0,
"crashed": true,
"status": "crashed"
},
"crash_details": {
"crash_info": "...",
"script_errors": "..."
},
"failures": []
}
crashed means Godot crashed (handle_crash:) or no test report was produced (e.g. a test script failed to compile). Only tests completed before the crash are reported.
SCRIPT ERROR: lines alone do NOT mark a run as crashed. When a complete report exists, they appear in crash_details.script_errors as diagnostics while status stays passed or failed. Mention them in the report if present.
reports/ directory