3个版本
0.1.8 | 2020年10月24日 |
---|---|
0.1.5 | 2020年10月18日 |
0.1.4 | 2020年10月17日 |
在测试中排名第461
44KB
851行(不包括注释)
cargo-service-message
为Cargo提供(测试)服务消息,以便集成到CI系统如TeamCity。
(如果您允许向TeamCity实例添加插件,请参阅https://github.com/JetBrains/teamcity-rust-plugin)
如何安装?
按照标准方式安装
cargo install cargo-service-message
如果您想要覆盖率,也请安装grcov
cargo install grcov
如何使用?
如果您使用Teamcity或Teamcity Cloud,那么如果您输入
cargo service-message test
而不是cargo test
,则它会发出TeamCity(和其他人?)理解并用于动态更新UI的服务消息。
如果您的命令行不起作用,请提出一个问题。
开箱即用的支持功能
以下是一些迄今为止似乎可以正常工作的示例命令
- cargo service-message test(测试结果将在TeamCity UI中实时显示)
- cargo service-message bench(统计信息记录以便TeamCity可以将其绘制成图表)
- cargo service-message clippy(违规情况显示为检查项)
- cargo service-message build(警告显示为检查项)
- cargo service-message check
- cargo service-message rustc
- cargo service-message clean(无操作)
- cargo service-message fmt(无操作)
对于编译,它会在工件中添加cargo-timings.html。我无法为您配置报告选项卡以显示它 - 您可以从实例的根项目为所有项目进行此操作,如果报告存在,它将添加选项卡。
设置环境变量SERVICE_MESSAGE="--cover"以生成覆盖率。
如果您不希望在调用后生成覆盖率报告(因为您还有更多测试要运行,这将影响覆盖率),则使用:"--cover-without-report"。
设置环境变量SERVICE_MESSAGE="--debug"以显示调试信息。
待办事项列表
[ ] 样式化覆盖率结果,使其看起来不那么糟糕。
[ ] 现在覆盖率是自动的,写一些更多的测试。
[ ] 如果子命令有问题,我们可以从stdin读取。例如:cargo test --message-format=json | cargo-service-message
[ ] 支持just/cargo-make?
Teamcity 待办事项列表
Hi Jetbrains,以下是使Teamcity + Rust更加出色的方法
[ ] 在检查中使用等宽字体。
[ ] 在检查中解释ansi转义代码,就像在teamcity构建日志中发生的那样。
需要帮助
[ ] 需要TeamCity测试人员 - 在您的Teamcity实例上试用并给我们反馈!
[ ] 需要黑客 - 帮助使crate在尽可能多的环境中正确运行。
许可证
选择Apache 2.0或MIT许可证。
跟踪问题
https://github.com/rust-lang/rust/pull/77890
https://github.com/rust-lang/rust/issues/49359
https://github.com/rust-lang/rust/issues/50297
发布日志
0.1.8 忽略报告的测试。
0.1.7(未发布):使覆盖率与proc-macros一起工作。
0.1.6(未发布):尊重CARGO_TARGET_DIR。
0.1.5 忽略覆盖率中的第三方crate。
0.1.4 初始crate发布
依赖项
~1.9–10MB
~94K SLoC