4 releases
Uses new Rust 2024
| 0.1.3 | Jun 9, 2025 |
|---|---|
| 0.1.2 | Apr 17, 2024 |
| 0.1.1 | Jan 24, 2024 |
| 0.1.0 | Jan 22, 2024 |
#225 in Testing
54 downloads per month
89KB
group-runner
Group Rust executable output in GitHub logs
group-runner is useful, e.g., when you have lots of integration tests and seeing their output concatenated can be overwhelming.
Note: When designing your testsuite, be sure to consider @matklad's excellent blogpost, Delete Cargo Integration Tests.
Example group-runner output
Recommended usage with one Cargo command
-
In your GitHub workflow, install
group-runner:steps: - name: Install group-runner run: cargo install group-runner -
Pass the following option to
cargo run,cargo test, orcargo bench:--config "target.'cfg(all())'.runner = 'group-runner'"Example:
steps: - name: Test run: cargo test --config "target.'cfg(all())'.runner = 'group-runner'"See The Cargo Book for more information.
Recommended usage with multiple Cargo commands
Like above, however, we recommend storing the configuration in an environment variable. Example:
env:
GROUP_RUNNER: target.'cfg(all())'.runner = 'group-runner'
steps:
- name: Test foo
run: cargo test --package foo --config "$GROUP_RUNNER"
- name: Test bar
run: cargo test --package bar --config "$GROUP_RUNNER"
Notes
To avoid mixing build output with test output, we recommend building tests in a separate step prior to running them. Example:
steps:
- name: Build
run: cargo test --no-run
- name: Test
run: cargo test --config "target.'cfg(all())'.runner = 'group-runner'"