What test output formats does EK9 support for CI/CD?
← Testing · Ref: Q207
EK9 supports 7 output formats via the -t flag, from terse to full HTML dashboards with coverage.
OUTPUT FORMATS
-t0 Terse - pass/fail only, minimal output -t1 Human-readable - formatted for developers -t2 JSON - machine-readable test results -t3 JUnit XML - standard CI/CD format -t4 JSON with coverage data -t5 Verbose coverage breakdown -t6 HTML dashboard with visual coverage
CI/CD INTEGRATION
Use -t3 for Jenkins, GitHub Actions, GitLab CI:
ek9 -t3 myTests.ek9
Produces standard JUnit XML that CI tools understand.
JSON FOR CUSTOM TOOLS
Use -t2 or -t4 for custom reporting pipelines:
ek9 -t2 myTests.ek9
HTML DASHBOARD
Use -t6 for development review:
ek9 -t6 myTests.ek9
Generates an interactive coverage dashboard.
See Q206 for coverage modes. See Q155 for basic testing. See Q157 for running tests. See Q321 for the HTML quality dashboard. See Q322 for profiling data. See Q627 for profiling output formats.
Example
defines module qa.testdeep.formats defines program TestOutputFormatsDemo() stdout <- Stdout() // === 7 OUTPUT FORMATS === stdout.println("EK9 test output formats:") stdout.println(" -t0 Terse (pass/fail only)") stdout.println(" -t1 Human-readable") stdout.println(" -t2 JSON results") stdout.println(" -t3 JUnit XML (CI/CD)") stdout.println(" -t4 JSON with coverage") stdout.println(" -t5 Verbose coverage") stdout.println(" -t6 HTML dashboard") // === CI/CD USAGE === stdout.println("CI/CD: ek9 -t3 myTests.ek9") stdout.println("Development: ek9 -t6 myTests.ek9")
Common mistakes
E50010 — Variables must be declared before use. Using stdout before its declaration is a forward reference. See ek9 -h E50010 for details.
Incorrect:
stdout.println("EK9 test output formats:") stdout <- Stdout()
Correct:
stdout <- Stdout() // === 7 OUTPUT FORMATS === stdout.println("EK9 test output formats:")
Other ways to ask this
- How do I get JUnit XML output from EK9 tests?
- What test report formats does EK9 support?
- How do I integrate EK9 tests with CI pipelines?
Coming from another language?
Java: JUnit XML via Maven Surefire, JaCoCo for coverage HTML. Python: pytest --junitxml and coverage html. Rust: cargo test with custom formatters. Go: go test -json, gotestsum for formatting. Kotlin: JUnit XML via Gradle. EK9: 7 built-in formats from -t0 to -t6, no external tools needed.
Keywords: ci, xml, test, html, verbose, junit, format, json, pipeline, terse, coverage, output