我正在使用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.0
的coverlet
版本出现问题。
硬编码版本解决了该问题。
echo "Adding Package"
dotnet add <.csproj> package coverlet.msbuild --version 2.5.1
关于c# - 如何在容器内使用Coverlet运行单元测试覆盖率报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55759730/