我想通过Nunit发布我的静态分析结果。我这样做与Pester,但这是设置在配置设置与Pester。是否有一种方法,我可以做等效时使用PS脚本分析器?我在文档中找不到关于它的信息。
这是我当前的代码:
- task: PowerShell@2
inputs:
targetType: 'inline'
script: |
Install-Module -Name PSScriptAnalyzer
Invoke-ScriptAnalyzer -Path *
是的,您需要使用外部脚本才能做到这一点。您需要能够将结果转换为Pester测试格式(XML),然后使用Nunit发布这些结果。
这篇文章进一步详细说明了这个过程:https://mathieubuisson.github.io/psscriptanalyzer-first-class-citizen/
你需要使用这个特定的模块将Pester结果转换成XML格式:https://github.com/MathieuBuisson/PowerShell-DevOps/tree/master/Export-NUnitXml
在Azure DevOps中,我们通常使用Publish Test Results任务将测试结果发布到Azure pipeline。我们可以使用您选择的支持所需结果格式的测试运行器。支持的结果格式包括CTest、JUnit(包括PHPUnit)、NUnit 2、NUnit 3、Visual Studio Test (TRX)和xUnit 2。
# Publish Test Results
# Publish test results to Azure Pipelines
- task: PublishTestResults@2
inputs:
#testResultsFormat: 'JUnit' # Options: JUnit, NUnit, VSTest, xUnit, cTest
#testResultsFiles: '**/TEST-*.xml'
#searchFolder: '$(System.DefaultWorkingDirectory)' # Optional
#mergeTestResults: false # Optional
#failTaskOnFailedTests: false # Optional
#testRunTitle: # Optional
#buildPlatform: # Optional
#buildConfiguration: # Optional
#publishRunAttachments: true # Optional