【问题标题】:Azure DevOps pipeline DotNetCore test path projects patternAzure DevOps 管道 DotNetCore 测试路径项目模式
【发布时间】:2021-06-12 21:33:45
【问题描述】:

我正在尝试在我的 Azure DevOps 管道中测试我的 .NET Core 5.0 项目。当使用我的一个测试项目的完整路径时,管道将测试该单个项目。当使用模式搜索我所有的测试项目时,他找不到其中一个。

我的项目结构如下:

  1. 后端
    1. DemoProject(带有 .sln 文件)
      1. DemoProject.Application
      2. DemoProject.Application.Test
      3. DemoProject.Persistance
      4. DemoProject.Persistance.Test
    2. 演示项目 2
      1. ....

为了找到解决方案,我创建了一个简单版本的管道模板:

- master

pool:
  vmImage: ubuntu-latest

steps:
- task: DotNetCoreCLI@2
  inputs:
    command: 'test'
    projects: './backend/DemoProject/DemoProject.Application.Tests/DemoProject.Application.Tests.csproj'

使用完整路径 (./backend/DemoProject/DemoProject.Application.Tests/DemoProject.Application.Tests.csproj) 时,管道会查找所选项目。使用模式(./backend/DemoProject/\*\*/\*.Tests.csproj./backend/DemoProject/\*\*/DemoProject.Application.Tests.csproj)时,管道找不到任何项目。

有人知道在 DemoProject 文件夹中运行我的所有测试项目的正确模式是什么吗?

【问题讨论】:

    标签: .net-core azure-devops azure-devops-pipelines


    【解决方案1】:

    试试**/*.Test.csproj,我已经在文件夹结构更复杂的项目中使用过,没有任何问题。

        - task: DotNetCoreCLI@2
          inputs:
            command: test
            arguments: --configuration Release
            projects: '**/*.Test.csproj'
            workingDirectory: './backend/DemoProject/'
    

    【讨论】:

    • 除了我的演示项目外,我在后端文件夹中还有第二个项目。我想单独测试和发布的那个项目。使用您建议的模式,将测试两个项目。
    • 你能在你的任务中把它和WorkingDirectory argument结合起来吗?
    • 模式和 WorkingDirectory 参数的组合是解决方案,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2020-06-03
    • 2021-01-20
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多