如何在Rust中运行cargo test后生成单元/集成测试HTML报告?
在Rust中生成测试HTML报告的实用方案
方案1:使用cargo-test-report直接生成HTML报告
这是最省心的方式,工具专门适配cargo test的输出,一键生成带样式的HTML报告:
- 安装工具:
cargo install cargo-test-report - 运行测试并生成报告:
命令会自动执行cargo test-reportcargo test,完成后在target/test-report目录下生成完整的HTML报告,打开目录内的index.html就能查看测试统计(通过/失败/跳过用例数)和每个用例的详细执行结果。
方案2:用cargo-nextest生成JUnit报告再转HTML
如果需要更高效的测试执行(比如并行测试、快速失败反馈),可以先导出通用的JUnit格式报告,再转换为HTML:
- 安装
cargo-nextest测试运行器:cargo install cargo-nextest - 运行测试并导出JUnit报告:
报告文件会保存在cargo nextest run --report junittarget/nextest/junit.xml - 安装JUnit转HTML工具(以Python的
junit2html为例):pip install junit2html - 转换为HTML报告:
执行后会生成对应HTML文件,包含结构化的测试结果展示。junit2html target/nextest/junit.xml
方案3:自定义JSON输出转HTML(适合定制需求)
如果需要完全自定义报告样式或内容,可以利用cargo test的JSON输出自行处理:
- 运行测试并导出JSON格式结果:
cargo test -- --format json > test-results.json - 编写脚本(如Python、JavaScript)解析该JSON文件,生成符合自身需求的HTML报告。这种方式灵活性最高,但需要额外开发脚本逻辑。
内容的提问来源于stack exchange,提问作者The Sun
相关产品推荐
相关产品推荐

