如何计算测试覆盖率
在如何进行单元测试中可以了解基本的测试工具和测试方法。 这里将详细介绍如何使用特定的配置和工具完善测试率的计算。
1. 代码覆盖率配置
进行覆盖率计算时可以通过指定配置文件.runsettings
来管理一些繁琐的配置。
一份推荐的.runsettings配置文件如下:
注意 : 推荐使用.runsettings
这个文件名,方便被后续的覆盖率可视化工具识别。注意.coding-ci.yaml
中的coverage
指定文件也需要指定为.runsettings
。
<?xml version="1.0" encoding="utf-8" ?>
<RunSettings>
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="XPlat code coverage">
<Configuration>
<Format>cobertura</Format>
<ExcludeByAttribute>Obsolete</ExcludeByAttribute>
<ExcludeByFile>**/Migrations/*.cs,**/*.Design.cs</ExcludeByFile><!-- Globbing filter -->
<SingleHit>false</SingleHit>
<UseSourceLink>true</UseSourceLink>
<IncludeTestAssembly>false</IncludeTestAssembly>
<SkipAutoProps>true</SkipAutoProps>
<DeterministicReport>false</DeterministicReport>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
</RunSettings>
2. 代码覆盖率工具
Visual Studio 企业版中自带了代码覆盖率工具,可以忽略本节内容。
为了更方便的查看测试覆盖的实际效果,可以通过Visual Studio进行查看, 社区版中没有自带代码覆盖率工具,需要安装第三方工具。
安装
在Visual Studio的插件中搜索 Run Coverlet Report,安装即可。
或者通过Market place 下载对应的插件。
使用
开始使用前,首先打开[Tools]-[Options]-[Run Coverlet Report], 设置 Use Run Settings选项为
True
,此时将默认使用.sln 所在目录下的.runsettings
文件。配置完成之后,通过[Tools]-[Run Code Coverage]即可执行代码覆盖率测试。
如果开启了[Toggle Code Coverage Highlighting],则可以在代码中看到覆盖率的具体情况。