我们正在将DevOps迁移到Azure。我们正在经历大量增加使用nunit进行单元测试所需的时间。主机配置有远程代理,并且作业在此计算机上执行。这些测试是在用C#编写的.Net框架解决方案上进行的。
以前,我们在同一台计算机上使用Jenkins进行DevOps代理。测试工作快得多。在詹金斯(Jenkins),这项工作大约在2小时30分钟内完成。在Azure DevOps中,它在5小时后失败(这是配置的超时),因此甚至没有完成。
这是Azure中的yaml代码:
- task: VSTest@2
timeoutInMinutes: 600
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: '*.Test*.dll'
searchFolder: '$(System.DefaultWorkingDirectory)/$(buildConfiguration)'
codeCoverageEnabled: false
platform: 'Any CPU'
configuration: '$(buildConfiguration)'
rerunFailedTests: false
pathtoCustomTestAdapters: 'Solution/packages/NUnit3TestAdapter.3.12.0/build/net35'
minimumExpectedTests: 1000
runInParallel: true
failOnMinTestsNotRun: true
resultsFolder: 'testResults'
continueOnError: true
在Jenkins上,作业的配置方式如下:
stage('Testing'){
when{
expression{ params.runTests == true}
}
steps{
bat "MSBuild.exe Solution\\Vibrosight.sln /p:Configuration=Debug /p:Platform=\"Any CPU\" /t:Rebuild /maxcpucount:4"
bat returnStatus:false, script: '''nunit3-console.exe Solution\\Vibrosight.sln --config=Debug --agents=1 --result=TestResult.xml;format=nunit2 --timeout=900000 --workers=1
exit 0'''
nunit testResultsPattern: 'TestResult.xml'
}
}
有人在我如何改善Azure DevOps上的nunit测试执行方面有一些提示吗?
非常感谢
答案 0 :(得分:0)
如上所述,一个测试阻止了执行。忽略此测试后,运行正常,几乎与之前相同。再次感谢克里斯您的提示。