c# - 如何在容器内使用Coverlet运行单元测试覆盖率报告?

标签 c# docker asp.net-core .net-core code-coverage

我正在使用mcr.microsoft.com/dotnet/core/sdk:2.2镜像在容器中运行单元测试。它无法通过引发以下错误来生成覆盖率报告。

error : One or more errors occurred. 
(Could not find file '/tmp/xunit.runner.visualstudio.dotnetcore.testadapter

Dockerfile:
FROM mcr.microsoft.com/dotnet/core/sdk:2.2
WORKDIR /app
COPY . /app
CMD [ "bash", "./build.sh" ]

build.sh
#!bin/bash

export PATH="$PATH:/root/.dotnet/tools"

echo "Installing Tools"
dotnet tool install --global coverlet.console

echo "Adding Package"
dotnet add <.csproj> package coverlet.msbuild

echo "Running Tests"
dotnet test <.csproj> /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:CoverletOutput='./coverage/'

最佳答案

2.6.0coverlet版本出现问题。

硬编码版本解决了该问题。

echo "Adding Package"
dotnet add <.csproj> package coverlet.msbuild --version 2.5.1

关于c# - 如何在容器内使用Coverlet运行单元测试覆盖率报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55759730/

相关文章:

docker - Docker Toolbox端口映射不起作用

docker - : Starting container process caused "exec:\"/docker-entrypoint. sh\": permission denied"错误

amazon-web-services - 在 AWS 上的 nginx 后面部署一个 https docker registry

C# 将字符串作为几何图形保存到数据库

c# - 为什么 JavaScriptSerializer 不能序列化内部属性?

c# - .Net Core 异步文件结果

c# - 如何简单地从 appsettings.json 读取

c# - ASP.NET 核心 : Accessing appsettings from another project in solution

c# - F# 看不到 C# 可序列化抽象类的抽象属性

c# - 在匿名类型中包含基于条件的属性