【发布时间】:2019-09-10 13:23:37
【问题描述】:
刚刚被介绍到 Azure 管道。我的项目是一个 .NET 项目并与 Azure 链接,但在集成之前没有运行我的单元测试(因此即使测试失败也会集成所有内容)
我的 .yaml 文件是:
# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/dotnet-core
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
buildConfiguration: 'Release'
steps:
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
我的单元测试位于名为MyProjectTests 的项目下的解决方案和名为ProjectTests.cs 的文件中。谁能告诉我需要添加到我的 yaml 文件中的内容(或一般情况下?)才能让这些文件运行?我自己对此进行了调查,似乎找不到解决方案,我想避免因尝试运行单元测试失败而堵塞我的提交历史。
非常感谢。
更新:
我已通过添加以下内容进行修复:
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/*Tests/*.csproj'
arguments: '--configuration $(buildConfiguration)'
【问题讨论】:
-
这里只是构建,没有运行测试的步骤。
-
嗨 @davidG 是的,我知道 - 我想添加一个步骤来运行测试,但不确定语法是否正确?
-
嗯,你可以像
build一样做同样的事情,但改用test。 -
生成示例 yaml 文件的最简单方法是让 Azure DevOps 为您完成。使用 UI 创建带有测试的基本管道并检查 yam lit 为您提供的结果。
-
@davidG 所以像
script: dotnet test --configuration $(buildConfiguration)?