Skip to content

ctrf-io/ctrf-cli

Repository files navigation

CTRF CLI

Various CTRF utilities available from the command line

💚

CTRF tooling is open source and free to use

You can support the project with a follow and a star

Contributions are very welcome!
Explore more integrations
Let us know your thoughts

Command Line Utilities

Name Details
merge Merge multiple CTRF reports into a single report.
flaky Output flaky test name and retries.

Merge

This might be useful if you need a single report, but your chosen reporter generates multiple reports through design, parallelisation or otherwise.

To merge CTRF reports in a specified directory, use the following command:

npx ctrf-cli@0.0.4 merge <directory>

Replace directory with the path to the directory containing the CTRF reports you want to merge. Your merged report will be saved as ctrf-report.json in the same directory by default.

Options

-o, --output path: Output file path for the merged report. Can be a filename (saved in input directory), relative path from current working directory, or absolute path. Default is ctrf-report.json.

# Save with custom filename in input directory
npx ctrf-cli@0.0.4 merge ./reports --output my-merged-report.json
# Merged report saved to: ./reports/my-merged-report.json

# Save with relative path from current directory
npx ctrf-cli@0.0.4 merge ./reports --output ./output/merged.json
# Merged report saved to: ./output/merged.json

# Save to directory with default filename
npx ctrf-cli@0.0.4 merge ./reports --output ./output/
# Merged report saved to: ./output/ctrf-report.json

# Save to absolute path
npx ctrf-cli@0.0.4 merge ./reports --output /tmp/merged.json
# Merged report saved to: /tmp/merged.json

-k, --keep-reports: Keep existing reports after merging. By default, the original reports will be deleted after merging.

npx ctrf-cli@0.0.4 merge <directory> --keep-reports

Flaky

The flaky command is useful for identifying tests marked as flaky in your CTRF report. Flaky tests are tests that pass or fail inconsistently and may require special attention or retries to determine their reliability.

Usage To output flaky tests, use the following command:

npx ctrf-cli@0.0.4 flaky <file-path>

Replace with the path to the CTRF report file you want to analyze.

Output

The command will output the names of the flaky tests and the number of retries each test has undergone. For example:

Processing report: reports/sample-report.json
Found 1 flaky test(s) in reports/sample-report.json:
- Test Name: Test 1, Retries: 2

What is CTRF?

CTRF is a universal JSON test report schema that addresses the lack of a standardized format for JSON test reports.

Consistency Across Tools: Different testing tools and frameworks often produce reports in varied formats. CTRF ensures a uniform structure, making it easier to understand and compare reports, regardless of the testing tool used.

Language and Framework Agnostic: It provides a universal reporting schema that works seamlessly with any programming language and testing framework.

Facilitates Better Analysis: With a standardized format, programatically analyzing test outcomes across multiple platforms becomes more straightforward.

Support Us

If you find this project useful, consider giving it a GitHub star ⭐ It means a lot to us.

About

Various CTRF utilities available from the command line

Resources

License

Contributing

Stars

Watchers

Forks