#coverage #ci #send #job #io #jenkins #github-actions

no-std bin+lib coveralls

将作业发送到 Coveralls (coveralls.io)

2 个版本

0.1.5 2024 年 5 月 5 日
0.1.4 2024 年 5 月 4 日
0.1.2 2021 年 11 月 30 日

#127 in 性能分析

LGPL-3.0

69KB
1.5K SLoC

coveralls

将 rust 程序的作业发送到 Coveralls (coveralls.io)。

此命令将帮助将 Coveralls 格式的覆盖率文件发送到 coveralls.io

这可以在本地计算机上使用,但这是为了与 Travis、Circle-CI、Jenkins 或其他 CI/CD 环境一起使用而制作的。

安装

对于安装,您可以使用 Cargo 通过调用

cargo install coveralls

奇怪的是 coveralls-python 已存在,为什么还需要另一个 API 客户端?

主要原因在于 coveralls-python 只能以 lcov 格式发送。但是,现在我看到 grcov 生成的格式并没有移除所有依赖项。

确实,我在我的项目中使用了 Lalrpop,并且生成的文件被包含在 grcov 生成的报告中.* 这里,我们专注于 Rust 项目,并且可以根据命令行参数删除所有依赖项。我们提供了包含依赖项或过滤它们的可能性,可以全部过滤或使用表达式(正则表达式)过滤。

目前,我们只使用 Coveralls 格式作为输入,但以后我们可以使用其他格式。

配置

如前所述,我们只接受 Coveralls 格式,但其他格式已列入待办事项清单。

对于参数,我们使用环境变量用于多个 CI 环境

  • AppVeyor
  • BuildKite
  • Circle-CI
  • Github Actions
  • Jenkins
  • Semaphore
  • Travis

命令行参数覆盖从环境获取的配置。

命令行参数 -h 提供有关配置的帮助。

待办事项清单

  • 输入格式
    • Coveralls
    • Lcov
  • 添加 Coveralls API 的其他入口点
  • 在代码中添加注释(带文档)

依赖项

~9–27MB
~401K SLoC