我刚刚使用xUnit Tests设置了一个新项目(.net core:netcoreapp2.1),用于使用硒进行UI测试自动化。我可以通过devops上的构建和发布管道运行测试,但无法在“测试”选项卡上获得测试结果。
现在我想知道:如何获取测试运行的XML报告。在发布管道上,我有一个“发布测试结果”任务,但是结果没有发布,并出现以下错误。
未找到发布“ D:\ a \ r1 \ a \ Global Platform-QA \ drop \ TestResults \ TEST.XML”的结果。 2019-06-27T02:48:16.2148676Z没有要发布的内部版本附件。
我尝试将测试结果格式更改为junit,但仍然缺少某些内容。我也向testresults文件夹添加了一个空的TEST.XML,但是仍然无法找出丢失的链接。
以下是在devops上构建和发布管道的Yaml。 池:步骤: 脚步: -任务:DotNetCoreCLI @ 2 displayName:还原 输入: 命令:恢复 项目:“ ** / *。csproj”
- task: DotNetCoreCLI@2
displayName: Build
inputs:
projects: '**/*.csproj'
arguments: '--configuration $(BuildConfiguration)'
- task: DotNetCoreCLI@2
displayName: Publish
inputs:
command: publish
publishWebProjects: false
projects: '$(Parameters.RestoreBuildProjects)'
arguments: '--configuration $(BuildConfiguration) --output
$(build.artifactstagingdirectory)'
zipAfterPublish: false
modifyOutputPath: false
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact'
inputs:
PathtoPublish: '$(build.artifactstagingdirectory)'
condition: succeededOrFailed()
发布管道:
steps:
- task: DotNetCoreCLI@2
displayName: CVProSmokeTest
inputs:
command: custom
projects: '**/CVProSmokeTest.dll'
custom: vstest
arguments: '--logger:trx;logfilename=TEST.xml'
workingDirectory: '$(System.DefaultWorkingDirectory)'
continueOnError: true
condition: succeededOrFailed()
timeoutInMinutes: 20
steps:
- task: PublishTestResults@2
displayName: 'Publish Test Results'
inputs:
testResultsFormat: XUnit
testResultsFiles: '**/TEST.xml'
mergeTestResults: true
testRunTitle: Selenium
condition: succeededOrFailed()
timeoutInMinutes: 20
答案 0 :(得分:0)
我的一位同事帮助我修复了管道,这是修改的步骤,在dotnet CLI任务前后,为文件添加了bash脚本。 预构建列表文件 脚步: -重击:| pwd
ls -alR workingDirectory:“ $(System.DefaultWorkingDirectory)” displayName:'预生成列表文件'
在构建任务之后,在发布之前,发布构建列表文件。 脚步: -重击:| pwd
ls -alR
cat * / test-results.xml workingDirectory:“ $(System.DefaultWorkingDirectory)” displayName:'构建后列表文件'
结果已发布,可以在“测试”选项卡下查看。 https://developercommunity.visualstudio.com/content/problem/624719/publishing-xunit-test-results-to-azure-devops.html