前言
該系列文目標是從構建一個容易測試的Android專案當基礎,中間可能會混著一些篇幅來介紹jetpack的套件,然後藉由該專案建立CI機制自動化測試及發佈到商店等。會盡量用簡單的方法來做,但最好要有基本的andorid開發經驗較適合讀這篇文章。
系列文大致上分兩個部分
-用kotlin建立MVVM架構專案同時撰寫測試案例
-用jenkins建置CI平台並同時導入各種功能
那麼沒事幹嘛要導入CI進開發流程,以及為何要使用架構(系列文以MVVM為例)來開發呢?
那麼首先要先提一下CI(Continuous integration,持續整合)。
CI是什麼呢?
簡單來說就是針對系統的每個變動(例如GIT的每次merge)進行持續驗證
大致上分為以下項目
-建置
-測試
-分析
-其他工作(部屬、發通知等等)
然後以android開發者角度來說,配合gradle使用jenkins來進行CI其實蠻簡單的,除了測試以外。有用過java寫android的單元測試的人應該知道寫測試其實有點麻煩,要做些前置作業才能跑,因為android的組件(例如context)不能直接在junit上運行,所以為了方便測試後續便發展出了MVP、MVVM等架構。
當然啦,講是這樣講,可能有些讀者跟我一樣當初在寫MVP的時候也是沒在寫測試案例的,
不過這樣的話選用這些架構感覺就只是做半套而已。
所以呢,這次就從建設一個會持續驗證的環境,以及準備一個易寫測試的專案來當基底,藉此提供更可靠的產品。環境都架好了總沒理由裝死了吧
參考資料:
https://aws.amazon.com/tw/devops/continuous-integration/