持續集成的自動化測試
如今互聯網軟件的開發、測試和發布,已經形成了一套非常標准的流程,最重要的組成部分就是持續集成(Continuous integration,簡稱CI,目前主要的持續集成系統是Jenkins)。
那么什么是持續集成?
持續集成指的是,頻繁地(一天多次)將代碼集成到主干。持續集成強調開發人員提交了新代碼之后,立刻進行構建、(單元)測試。根據測試結果,我們可以確定新代碼和原有代碼能否正確地集成在一起。
持續集成的好處有二個
(1)快速發現錯誤。每完成一點更新,就集成到主干,可以快速發現錯誤,定位錯誤也比較容易。
(2)防止分支大幅偏離主干。如果不是經常集成,主干又在不斷更新,會導致以后集成的難度變大,甚至難以集成。
持續集成的目的,就是讓產品可以快速迭代,同時還能保持高質量。它的核心措施是,代碼集成到主干之前,
必須通過自動化測試。只要有一個測試用例失敗,就不能集成。
一個完整的持續集成系統必須包括:
一個自動構建過程,包括自動編譯、分發、部署和測試等。
一個代碼存儲庫,即需要版本控制軟件來保障代碼的可維護性,同時作為構建過程的素材庫。一個持續集成服務器。
自動化測試(Automated Test),很多公司團隊都在做,一般都和Jenkins一起使用,然后結合Robot Framework、Jmeter實現UI自動化和接口自動化測試。
測試執行
為了能夠使自動化測試快速,穩定的運行,可以基於Docker搭建了一套分布式測試執行環境。
為了高質量的軟件交付,組織必須轉向自動化流程,手動流程太容易出錯,效率低下。對於執行CD和devops的團隊來說,自動化變得越來越重要,大家只需要專注在code和review中,其它過程都盡可能的自動化。
越早通過用戶和DevOps建立可持續反饋機制,可以幫助軟件產品更好的迭代和修復缺陷,建立完善的反饋機制能夠更早的發現問題,讓我們更多的時間找到完美的解決問題方案。