如何在 Azure DevOps 管道中使用 ASP.NET 核心依赖项 运行 XUnit 测试?
How to run XUnit tests with ASP.NET Core dependency in Azure DevOps pipeline?
我们正在为 ASP.NET Core Web API 项目设置 CI/CD。我们希望在引用 Web API 项目的 XUnit 项目的构建管道中进行 运行 单元测试。这是来自我们的构建管道:
# azure-pipelines.yml
...
pool:
vmImage: 'windows-latest'
...
- task: UseDotNet@2
inputs:
version: 3.1.x
packageType: runtime
- task: DotNetCoreCLI@2
inputs:
command: build
projects: '**/MyWebApi.csproj'
arguments: '--configuration Release'
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/MyUnitTests.csproj'
arguments: '--configuration Release'
...
当我们 运行 它时,Web API 项目已成功构建,但测试失败 运行,出现以下错误:
The framework 'Microsoft.AspNetCore.App', version '3.1.0' was not found.
是否需要将我们要测试的类(来自Web API项目)提取到另一个不依赖AspNetCore框架的库中?或者我们可以使用 UseDotNet@2 之类的任务在管道代理上安装框架吗?
请按如下方式更改您的 UseDtonet 步骤和广告还原步骤:
- task: UseDotNet@2
inputs:
version: 3.1.x
packageType: sdk
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
projects: '**/*.csproj'
我们正在为 ASP.NET Core Web API 项目设置 CI/CD。我们希望在引用 Web API 项目的 XUnit 项目的构建管道中进行 运行 单元测试。这是来自我们的构建管道:
# azure-pipelines.yml
...
pool:
vmImage: 'windows-latest'
...
- task: UseDotNet@2
inputs:
version: 3.1.x
packageType: runtime
- task: DotNetCoreCLI@2
inputs:
command: build
projects: '**/MyWebApi.csproj'
arguments: '--configuration Release'
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/MyUnitTests.csproj'
arguments: '--configuration Release'
...
当我们 运行 它时,Web API 项目已成功构建,但测试失败 运行,出现以下错误:
The framework 'Microsoft.AspNetCore.App', version '3.1.0' was not found.
是否需要将我们要测试的类(来自Web API项目)提取到另一个不依赖AspNetCore框架的库中?或者我们可以使用 UseDotNet@2 之类的任务在管道代理上安装框架吗?
请按如下方式更改您的 UseDtonet 步骤和广告还原步骤:
- task: UseDotNet@2
inputs:
version: 3.1.x
packageType: sdk
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
projects: '**/*.csproj'