幫忙多點點文章末右下角的「好看」支持下,也可以將本文分享到朋友圈或你身邊的朋友,謝謝
整理了20多款持續集成工具,這是作為軟體測試人員需要了解的,也是在構建持續質量改進時,需要進行選型的基礎設施工具。
什麼是持續集成?
CI是一種提高代碼質量的方法。它是一種軟體工程方法,以共享的方式和環境合併所有開發人員的工作副本。
它將立即執行的更改隔離開來,並在將更改添加到更大的代碼庫時同時報告。
持續集成的主要目標是在發現代碼庫中的任何缺陷時提供快速反饋,並儘快糾正它。它使伺服器上的測試過程自動化,並向用戶提供自動報告。
常用的持續集成工具
下面是整理的一些常用開源和商業的持續集成工具列表:
- Buildbot
- ThoughtWorks
- Urbancode deploy
- Jenkins
- Perforce
- Bamboo
- Hudson
- TeamCity
- Circle CI
- Codeship
- Cruise control
- Go
- Travis
- Integrity
- Strider
下面是對每個工具的簡要介紹
Jenkins
Jenkins是一個跨平臺的持續集成工具,可以持續構建和測試軟體項目。Jenkins是基於Java程式語言開發的,開發人員可以很容易地將更改集成到項目中。它提供了構建管道和集成許多測試和部署方法的不同方法。
簡單的安裝和配置是Jenkins的特性,開發人員可以通過Jenkins將其部署到servlet容器中。富插件是另一個與幾乎所有現有軟體配置管理[SCM]或構建工具集成的特性。Jenkins很容易擴展和修改新的插件。
官網:https://jenkins.io/
Buildbot
Buildbot是基於Python開發的頂級工具、支持twisted框架。是一個開放源碼框架,可以自動化複雜測試和應用程式部署的所有過程。
此工具之所以如此流行,是因為它支持跨不同平臺的流程的分布式和並行執行。
簡單地說,它是基於作業調度系統的,其中有可用的資源,它執行作業並生成測試報告。
此外,它的配置基於主從系統,其中主從系統監視更改並向用戶或開發人員提供報告。這個配置通過另一個開源框架(如Twisted、Webkit、Firefox、Chromium)增強了它的完整性。
官網:http://buildbot.net/
ThoughtWorks是提供CI功能的頂級公司。ThoughtWorks提供的集成工具至少每天集成一次,並且可以輕鬆快速地檢測問題,減少了查找錯誤的回溯時間,開發人員可以利用這段時間設計任何特性。
ThoughtWorks增加了可視工具,這樣用戶就可以輕鬆地交流並看到正在發生的事情。它還只使用一個源存儲庫。它使部署過程自動化,並快速構建自我測試。
官網:https://www.thoughtworks.com/continuous-integration
Urbancode deploy
Urbancode deploy是IBM的一個多層應用程式模型或產品。它在敏捷環境中提供持續交付、自助服務、快速反饋和增量更新,並以一致的方式自動化應用程式部署。開發人員還可以回滾應用程式,跨伺服器、層和組件組織更改。
此外還提供審計跟蹤、版本控制等。在清晰可見性特性的幫助下,開發人員和用戶可以看到部署了什麼,在哪裡部署,以及誰在進行部署。Urbancode很容易與中間件項目集成並提供伺服器虛擬化。
Perforce Helix
Perforce Helix是一個統一的、開放的、靈活的CI平臺,支持所有文檔化的api,Helix強大的版本控制引擎特性可以管理和保護文件的任何類型和大小。它支持所有類型的應用程式,所以任何人都可以根據自己的需要使用。
所有的評審、評論、決策等都是通過通過Helix Swarm完成的,GitSwarm生態系統特性執行訪問控制並同步主線存儲庫。它很容易檢測到任何威脅並預測風險,並在幾秒鐘內找出該風險或威脅的影響。helix可基於免費、啟動包或訂閱獲得。
官網:https://www.perforce.com/products/helix-core
Bamboo
Bamboo是一個CI構建伺服器,可以自動構建、測試和發布。很容易與JIRA、Bitbucket集成。Bamboo支持任何類型的語言和技術,例如CodeDeply、Ducker、Maven、Git、SVN、Mercurial、Ant、AWS、Amazon S3 bucket。
此外Bamboo還識別了這些技術中的新分支,並自動應用於觸發器和變量。部署和自動化非常快速和容易。
商業軟體,但可以免費試用。
官網:https://www.atlassian.com/software/bamboo
TeamCity
TeamCity是一個支持許多特性的智能CI伺服器。它提供了自動框架和配置執行代碼覆蓋、代碼分析、避免代碼重複等等。TeamCity自動存儲或備份所有更改、失敗和構建,以備將來參考。
TeamCity支持雲集成,集成了Microsoft Azure、VMware等多種雲技術。開發人員或用戶可以根據需要擴展伺服器,並使用開放api創建任何插件。它是一個免費的CI工具。
官網:https://www.jetbrains.com/teamcity/
Travis CI
Travis CI是一個流行的測試開源工具。開發人員或測試人員可以輕鬆地將Travis CI與GitHub同步並執行測試。對於每個規模的項目,它都有每種類型的私有存儲庫計劃。它支持許多語言和平臺,如Linux、Mac或iOS。
在Travis中,用戶可以在測試期間看到所有東西。有豐富的且優秀的api和命令行工具執行並行測試運行。支持拉請求和分支構建流。
官網:https://travis-ci.org/
Integrity
Integrity是一個基於R'uby開發的CI伺服器,只與GitHub一起工作,用戶可以通過使用鏡像存儲庫使用其他具有完整性的SCM工具,這意味著GitHub鏡像其他SCM,然後完整性就可以使用它。為此,用戶必須不斷更新鏡像存儲庫。
每當用戶提交代碼時,都會構建並運行代碼的完整性。然後,它生成報告並向用戶提供通知。
官網:http://integrity.github.io/
Strider or Strider CD
Strider是一個基於Node.js + MongoDB開發的開源的CI/CD平臺,在BSD許可下發布的。支持修改資料庫模式和用戶界面並註冊HTTP路由的不同插件。
可擴展框架觸發構建和部署。它集成了許多項目,如GitHub, BitBucket, Gitlab等。VCS分支、Github拉請求、協作器特性使其易於處理。
官網:http://strider-cd.github.io/
其他的這裡就不一一列舉出來了,大家有興趣的話,可以根據上述的關鍵字進行搜索,獲取到官網進行了解。
掃一掃加我微信,入群一起討論交流各種開源測試技術、工具、經驗和解決方案。
掃一掃,加入答疑專用知識星球:66¥/年
大數據測試過程、策略及挑戰
大數據測試之ETL測試入門
軟體測試工程師又一大挑戰:大數據測試
jmeter入門系列v1.0電子版
Python3接口測試pdf+源碼免費領
快學Python3系列
順手點點點右下角的"好看"