【问题标题】:Jenkins Plugin MSTestRunner equivalent in GitHub Workflow ActionsGitHub 工作流操作中的 Jenkins 插件 MSTestRunner 等效项
【发布时间】:2021-02-15 17:17:17
【问题描述】:

Github Actions Workflow 中是否有 MSTest.exe YAML 等效项? 如果可以获取包含/testcontainer/category/resultsfile 的示例 yaml?

我找到了MSBuild。不确定是否可以使用 MsBuild 来运行 MSTest,如果它是使用上面的示例也可以解决我的问题。

当前工作流 yaml

 name: MS Test Build

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:

  build:
    runs-on: windows-latest
                             
    steps:
    - name: Checkout
      uses: actions/checkout@v2
    
    - name: Setup MSBuild
      uses: microsoft/setup-msbuild@v1.0.2

    - name: MSTest
      shell: powershell
      run: '& "$(vswhere -property installationPath)\Common7\IDE\MSTest.exe" /testcontainer:Test.dll /resultsfile:TestResults.trx'

编辑:更新为半工作解决方案。

【问题讨论】:

    标签: msbuild yaml jenkins-plugins mstest github-actions


    【解决方案1】:

    既然你手头有 msbuild,你应该也可以运行 mstest:

    name: MSBuild and MSTest CI
    
    on:
      push:
        branches: [ main ]
      pull_request:
        branches: [ main ]
    
    jobs:
      build:
        runs-on: windows-latest
    
        steps:
        - uses: actions/checkout@master
    
        - name: Dependency - MSBuild
          uses: microsoft/setup-msbuild@v1.0.2
          with:
            vswhere-path: 'C:\Program Files (x86)\Microsoft Visual Studio\Installer'  
    
        - name: MSBuild
          working-directory: src
          continue-on-error: true
          run: msbuild MyProject.csproj
    
        - name: MSTest
          working-directory: src
          continue-on-error: true
          run: mstest <paramaters here>
    

    Here you have info how to use msttest

    【讨论】:

    • 我不需要使用MSBuild。我尝试了提供的代码,但我没有来自 Jenins 插件的 .csproj。它也无法识别mstest
    • 您是如何将microsoft/setup-msbuild@v1.0.2vswhere-path 一起使用的?或不?我试过vswhere-path,然后我就可以使用mstest了。对于上面的示例,我并不是说您需要 csproj 文件。这是一个例子。
    • 我用当前正在工作的 yaml 更新了我的 q 以及我的输出应该是什么样的。如果您有一个优化版本也可以提供帮助。
    【解决方案2】:

    工作解决方案。仍在寻找改进,但这会奏效

    
    name: MS Test Build
    
    on:
      push:
        branches: [ main ]
      pull_request:
        branches: [ main ]
    
    jobs:
    
      build:
        runs-on: windows-latest
                                 
        steps:
        - name: Checkout
          uses: actions/checkout@v2
        
        - name: Setup MSBuild
          uses: microsoft/setup-msbuild@v1.0.2
    
        - name: MSTest
          shell: powershell
          run: '& "$(vswhere -property installationPath)\Common7\IDE\MSTest.exe" /testcontainer:Test.dll /resultsfile:TestResults.trx'
    

    【讨论】:

      猜你喜欢
      • 2023-02-01
      • 2020-05-05
      • 2017-10-29
      • 1970-01-01
      • 2023-01-30
      • 1970-01-01
      • 1970-01-01
      • 2022-08-23
      • 2020-03-15
      相关资源
      最近更新 更多