在Coveralls中为单个代码库获取多个覆盖报告

66

是否有可能在单个存储库中为前端和后端测试获得单独的覆盖率报告?

似乎一种可能的方法是将 lcov 报告连接成一个,然后将其发送给 coveralls,正如在这个问题中提到的那样。

但是,我想知道是否有办法查看前端和后端的分开的代码覆盖率报告或者提供两个 lcov 文件给 coveralls。如果有,该怎么做?


3
我有一个基于C++的库项目,在它的.travis.yml文件中定义了两个“环境变量”—— REAL_TYPE=floatREAL_TYPE=double——并且它为每个变量生成覆盖率报告。我可以从Coveralls看到每个变量的覆盖率变化情况,这就是你所说的多个覆盖率报告吗?你也可以像前端和后端一样使用两个环境变量,并获得你需要的结果吗? - Louis Langholtz
1个回答

2
如果您参考Coverall的API文档,您会发现他们的Job API支持一个可选参数叫做service_number。默认情况下,此选项旨在匹配CI系统的构建号,但您可以使用它来跟踪每个CI构建的多个覆盖率报告。
您可以通过跟踪实际的CI构建编号,将其乘以2,并将该数字作为“后端”构建编号,并递增1,使其成为“前端”构建编号。这种加倍只是确保您不会多次发布到相同的构建编号。当然,您可以使用其他方法生成这些ID-技术上API接受字符串,因此您可以提交例如234-frontend234-backend
理论上,您也可以使用必需的service_name参数来实现相同的效果。问题在于,一些保留的服务名称(“travis-ci”,“travis-pro”或“coveralls-ruby”)具有特殊功能,您可能不愿意牺牲。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接