问题描述
我在 gitlab-ci.yml 中使用 dotnet dotcover test 命令来获取代码覆盖率。 我在我的单元测试解决方案中包含了 dotcover dotnetclitool 版本 2020.3.3,以便在管道测试阶段执行此命令。 但是我无法从代码覆盖率结果中成功排除某些类(在特定命名空间/文件夹下)。我的解决方案结构如下:
- 源文件夹
- AClient.Repository.csproj
-
扩展文件夹
AClientExt.cs
-
模型文件夹
ModelA.cs
ModelB.cs
-
存储库文件夹
RepoA.cs
RepoB.cs
-
- AClient.Repository.csproj
- 测试文件夹
- AClient.Repository.UnitTests.csproj
- RepositoryTests
RepoATests.cs
- RepositoryTests
- AClient.Repository.UnitTests.csproj
现在代码覆盖率包括解决方案,我想排除以下命名空间:
AClient.Repository.Extensions.*
AClient.Repository.Models.*
AClient.Repository.Tests.*
我正在运行此命令,但它无法正确排除过滤器,所以请有人帮我弄清楚 dcFilters 的正确用法:
解决方法
我最终是这样解决的:
export DISPLAY=$(/mnt/c/Windows/System32/ipconfig.exe | awk -F\: '/IPv4/{adr=$NF}END{sub(/\r$/,"",adr); print adr":0:0"}')