Ruby on Rails覆盖率工具,显示什么不被覆盖
问题描述:
我正在开发一个使用rails的应用程序。自从我们开始使用rspec来测试我们的应用程序。我们使用simplecov作为工具来展示我们的测试覆盖率。Ruby on Rails覆盖率工具,显示什么不被覆盖
但simplecov只显示文件内的覆盖率的百分比,我的问题是,如果有一个工具,显示哪一行代码没有被覆盖?
答
我们在我的工作场所使用:https://codecov.io/#features
Codecov是用来帮助开发人员确定哪些行代码是由他们的测试执行。有三个主要术语用于表示测试结果:命中,部分和未命中。
54%的值来自命中/(命中+偏+漏)=覆盖的计算。
- 命中是由您的 测试完全执行的一行(aka语句)。
- 部分是一个语句(通常是一个分支),它不是完全执行的 。
示例如果为真:...将始终是部分匹配,因为该分支从未被跳过,因为true始终为真。
- miss是未被测试执行的语句。
简而言之,54%的成绩表示“我的一半代码已经过测试”。使用Codecov调查未经测试的代码中的方法和语句,以帮助指导您在何处编写下一个测试并增加覆盖范围。