test
Run JUnit tests with the standalone console launcher; optionally collect JaCoCo coverage.
When to use it
- Run a small Java kata or library test suite without creating a full build file.
- Give an agent failing test names and stack traces in a parseable shape.
- Collect coverage during a refactor to prove the edited code path is exercised.
Common workflows
jbx test src/test/java --json
jbx test --json tests/CalculatorTest.java -- --select-method CalculatorTest#adds
jbx test --coverage --json
Real-life examples
Run one focused JUnit method during repair
jbx test --json tests/CalculatorTest.java -- --select-method CalculatorTest#adds
jbx test --coverage --json
Use test after check passes and you need behavioral proof, stack traces, or coverage for a small Java codebase.
Agent loop
- Run the narrowest failing test with
--json. - Fix the source or test that explains the failure.
- Re-run the focused test, then widen to the containing test directory.
- Use coverage only when the task asks whether code paths are exercised.
Agent notes
Arguments after -- go to the JUnit console launcher, not jbx. Keep that boundary explicit in automation.
JSON and schema
jbx test --json returns test execution status, failures, and coverage metadata when requested. Example output and field notes: test JSON.
Example JSON:
{
"tests": 1,
"failures": 0,
"errors": 0,
"skipped": 0,
"testCases": [
{
"className": "CalculatorTest",
"name": "adds()",
"time": "0.025",
"status": "passed"
}
]
}
Verification checklist
- JSON reports zero failing tests for the requested scope.
- Focused selection is widened before final confidence claims.
- Coverage output exists and is inspected when
--coverageis used.
Arguments and flags
This section is copied from the CLI help for this release so the page explains the actual accepted arguments.
jbx test
Run JUnit tests with the standalone console launcher
Usage: jbx test [OPTIONS] [SCRIPT] [ARGS]...
Arguments:
[SCRIPT]
Java test source file or directory. Defaults to the current directory
[default: .]
[ARGS]...
Extra arguments passed to the JUnit ConsoleLauncher after defaults
Options:
--json
Print converted JUnit XML report as JSON
--xml
Print the generated JUnit XML report
--coverage
Collect JaCoCo coverage data in target/jacoco.exec
--jacoco-version <JACOCO_VERSION>
JaCoCo agent version to use when --coverage is enabled.
Defaults to the built-in version (0.8.13).
--junit-version <JUNIT_VERSION>
JUnit Platform Console Standalone version to use.
Defaults to the cached latest Maven Central release, refreshed periodically.
--deps <DEPS>
Additional dependency coordinates, same shape as //DEPS
--repo <REPOS>
Additional repository, same shape as //REPOS
--source <SOURCES>
Additional source file, same shape as //SOURCES
--files <FILES>
Additional file/resource, same shape as //FILES
--class-path <CLASSPATH>
Additional classpath entries
--javac-option <JAVAC_OPTIONS>
Additional javac option
--runtime-option <RUNTIME_OPTIONS>
Additional java runtime option for the JUnit launcher JVM
--java <JAVA_VERSION>
Override //JAVA requested version
--javaagent <JAVA_AGENTS>
Additional java agent, same shape as //JAVAAGENT
--cache-dir <CACHE_DIR>
Override cache directory
--trust
Trust this remote script content hash before testing
-h, --help
Print help (see a summary with '-h')
Skill
Agents can fetch the matching versioned skill with:
jbx skill get jbx-test