利用Azure DevOps建设ExcelBDD的持续集成
在ExcelBDD開源敏捷項目啟動了!暨介紹微軟Agile+DevOps免費平臺-dev.azure.com?一文當中介紹了利用Agile DevOps管理需求。
本文來介紹其中的持續集成建設。
直接進入正題,ExcelBDD的Azure DevOps項目主界面如下:
一圖勝千言,上圖就是Azure DevOps Pipelines菜單。
在右上角點擊“New?Pipeline",可以看到如下代碼庫:
重要提醒:能夠接入既有的GitHub庫,也就是說在Azure DevOps上建立一個新項目可以對接GitHub的老庫,能夠免費使用Azure DevOps的Pipeline。
ExcelBDD全部搭建在Azure DevOps上,因此實例選擇Azure Repos Git,出現如下界面
這是ExcelBDD開源項目之前已經設置的,點擊,得到如下
這里只展示一屏,還有很多,幾乎覆蓋了當前常見的開發語言和對應配置。
本例選擇Mavan,接下來就得到Pipeline YAML配置文件
ExcelBDD的Java部分?實例如下
trigger: - '*'pool:vmImage: ubuntu-lateststeps: - task: Maven@3inputs:mavenPomFile: 'JavaExcelBDD/pom.xml'javaHomeOption: 'JDKVersion'jdkVersionOption: '1.8'jdkArchitectureOption: 'x64'publishJUnitResults: truetestResultsFiles: '**/surefire-reports/TEST-*.xml'goals: 'test'# Publish Test Results - task: PublishTestResults@2inputs:testResultsFormat: 'JUnit' # Options: JUnit, NUnit, VSTest, xUnit, cTesttestResultsFiles: '**/TEST-*.xml' searchFolder: 'JavaExcelBDD' - task: PublishCodeCoverageResults@1inputs:summaryFileLocation: "**/jacoco.xml"pathToSources: 'JavaExcelBDD/src'failIfCoverageEmpty: truedisplayName: "Publish Test Code Coverage"可以看到,憑借YAML的可讀性,以上分成3個部分
1,maven編譯和測試,監控任意變更
2,發布測試結果
3,發布測試覆蓋率
下面例子是PowerShell部分的CI
trigger: - master - PS*pool:vmImage: ubuntu-lateststeps: - task: PowerShell@2inputs:targetType: 'inline'script: |# Write your PowerShell commands here. Write-Host "Start to install ImportExcel"Install-Module -Name ImportExcel -Scope CurrentUser -ForceWrite-Host "Installed ImportExcel successfully."errorActionPreference: 'continue'- task: PowerShell@2inputs:filePath: 'PowerShellExcelBDD/CI/CI_L1.ps1'errorActionPreference: 'continue'displayName: 'Test ExcelBDD'- task: PublishTestResults@2inputs:testRunner: "JUnit"testResultsFiles: "**/testResults.xml"failTaskOnFailedTests: truedisplayName: "Publish Test Results"- task: PublishCodeCoverageResults@1inputs:summaryFileLocation: "**/coverage.xml"pathToSources: 'PowerShellExcelBDD/ExcelBDD'failIfCoverageEmpty: truedisplayName: "Publish Test Code Coverage"同樣,可讀的YAML也很容易理解,步驟上與Java部分CI是一樣的。
可以看到這些CI配置不麻煩。
下面是運行效果 Java
最后結語:
以上展示的例子都不復雜,讀者如果已經有現成的GitHub庫,大可以去試試,Azure DevOps提供了強大的Pipeline編排能力。
但是仍然要指出的是流水線配置往往是一次性工作,調整也并不頻繁。持續集成真正的關鍵在于自動化測試開發,ExcelBDD本身就是支持持續集成的解決方案。根據新功能或者缺陷修復而配套的自動化測試占據更大的比重。再次推薦利用ExcelBDD進行BDD,高效并且高質量。
上面實例中,測試行覆蓋率達到了90.6%。
總結
以上是生活随笔為你收集整理的利用Azure DevOps建设ExcelBDD的持续集成的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ExcelBDD-Java开源组件发布了
- 下一篇: Python实战2 - 200行Pyth