Android TDD測試驅動開發: 從UnitTest、TDD到DevOps實踐

Android TDD測試驅動開發: 從UnitTest、TDD到DevOps實踐

iT邦幫忙鐵人賽

期:
2020/06/07
9
550495
查詢門市庫存
全台第一本屬於自己的 Android TDD!!!

內容簡介

內容簡介
本書內容改編自第 11 屆 iT 邦幫忙鐵人賽,Mobile Development 組佳作網路系列文章──《Android TDD 測試驅動開發》,也是第一本完整介紹從 Android 單元測試、TDD到 DevOps 全面自動化的台灣本土專書。
這是寫給 Android 開發者的測試及 TDD 入門書,為初學者量身設計。帶領你撰寫第一個單元測試,學會依賴注入及使用 Stub 與 Mock 的時機,最後實踐 TDD 測試驅動開發,讓你在寫測試之前先想清楚需求,在開發初期釐清如何設計。有了測試後還要能自動化,透過 CI 工具 Jenkins 進行自動測試與上架至 Google Play,儘可能的將人工作業都自動化,以達到持續整合及持續部署。

精彩教學
☑ 你將學會效率及品質兼具的開發方式
♦ Kotlin 撰寫單元測試
♦ 用依賴注入、Mock 框架來解 Android 的相依
♦ 以 MVP、MVVM 架構提升可測試性
♦ 在Android 實踐 TDD:紅燈、綠燈、重構

☑ 你將學會 QA 所擅長的自動測試工具
♦ Espresso 撰寫UI測試
♦ Appium 撰寫測試
♦ Cucumber 進行 BDD

☑ 你將學會 DevOps 的關鍵自動化工具
♦ Android App 的 DevOps
♦ Jenkins CI 持續整合工具
♦ 自動建置、測試、部署至 Google play
♦ 在雲端測試
展開看更多

產品目錄

01 Kotlin 單元測試

1.1 建立IntelliJ 專案

1.2 第一個測試

1.3 JUnit 測試框架

1.4 依賴注入 晴天9 折,雨天沒折

1.5 單元測試小結

02 假物件:Mock 與Stub

2.1 假物件:Mock 與Stub

2.2 Mock 框架:Mockito

2.3 Mockito 在Kotlin 的問題

2.4 Mock 框架:Mockk

03 Android 單元測試

3.1 第一個Android 單元測試

3.2 Mock Android Framework

3.3 Instrumented Tests

3.4 UI 測試:使用Espresso

3.5 Robolectric

3.6 使用Custom View Components 提升可測試性

3.7 Gradle 測試環境設定

3.8 Android 測試小結

04 使用MVP、MVVM 架構提高可測試性

4.1 MVP 架構

4.2 使用MVP 架構進行單元測試

4.3 MVVM 架構

4.4 ViewModel 與LiveData

4.5 MVVM 單元測試

4.6 依賴注入框架Koin

4.7 Retrofit 的測試

4.8 RxJava 的測試

4.9 小結

05 Android TDD 測試驅動開發

5.1 TDD 測試驅動開發

5.2 Android MVP 架構下的 TDD

5.3 Android MVVM 架構下的 TDD

5.4 TDD 小結

06 BDD 行為驅動開發

6.1 Cucumber

07 自動化測試工具

7.1 Appium 自動化工具

08 Android 的DevOps

8.1 什麼是DevOps

8.2 Jenkins

8.3 自動建置Android 專案

8.4 透過Jenkins 執行測試

8.5 建置結果的即時通知

8.6 程式碼自動檢查

8.7 AppDistribution

8.8 Beta Testing

8.9 自動部署App 至Google Play

8.10 階段發佈App

8.11 閃退偵測

8.12 小結

09 在雲端測試App

9.1 Firebase Test Lab

9.2 AWS(Amazon Web Services) 測試平台

10 使用TDD 開發遊戲—採地雷

10.1 擬定測試案例

10.2 產生遊戲方格

10.3 開始遊戲、點擊方格

10.4 插旗

10.5 判定遊戲結果

作者介紹

陳瑞忠

陳瑞忠
現於旅遊電商擔任 App team leader,擁有多年的業界開發經驗,擅長 App 及 Web 技術領域。
喜歡研究新技術、分享技術文章,曾在Android 社群擔任講者,近年更於線上教學平台製作 Android 課程,希望幫助更多人加入 App 的開發領域。連續 2 年以主題《 Android animation 30天上手》(Software Development 組)及《 Android TDD 測試驅動開發》(Mobile Development 組)獲得 iT 邦幫忙鐵人賽佳作。

規格

誠品貨碼 / 2681886108004
ISBN13 / 9789864344901
ISBN10 / 9864344900
EAN貨碼 / 9789864344901
頁數 / 352
注音版 / 否
裝訂 / P:平裝
語言 / 1:中文/繁體
尺寸 / 23X17CM
級別 / N:無
重量(g) / 812.8g

退貨說明

退貨須知:

  1. 依照消費者保護法的規定,您享有商品貨到次日起七天猶豫期(含例假日)的權益(請注意!猶豫期非試用期),辦理退貨之商品必須是全新狀態(不得有刮傷、破損、受潮)且需完整(包含全部商品、配件、原廠內外包裝、贈品及所有附隨文件或資料的完整性等)。
  2. 請您以送貨廠商使用之包裝紙箱將退貨商品包裝妥當,若原紙箱已遺失,請另使用其他紙箱包覆於商品原廠包裝之外,切勿直接於原廠包裝上黏貼紙張或書寫文字。若原廠包裝損毀將可能被認定為已逾越檢查商品之必要程度,本公司得依毀損程度扣除回復原狀必要費用(整新費)後退費;請您先確認商品正確、外觀可接受,再行拆封,以免影響您的權利;若為產品瑕疵,本公司接受退貨。

依「通訊交易解除權合理例外情事適用準則」,下列商品不適用七日猶豫期,除產品本身有瑕疵外,不接受退貨:

  1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮蔬果、乳製品、冷凍冷藏食材、蛋糕)
  2. 依消費者要求所為之客製化給付。(如:客製印章、鋼筆刻字)
  3. 報紙、期刊或雜誌。
  4. 經消費者拆封之影音商品或電腦軟體。
  5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書)
  6. 已拆封之個人衛生用品。(如:內衣褲、襪類、褲襪、刮鬍刀、除毛刀等貼身用品)
  7. 國際航空客運服務。

若您退貨時有下列情形,可能被認定已逾越檢查商品之必要程度而須負擔為回復原狀必要費用(整新費),或影響您的退貨權利,請您在拆封前決定是否要退貨:

  1. 以數位或電磁紀錄形式儲存或著作權相關之商品(包含但不限於CD、VCD、DVD、電腦軟體等) 包裝已拆封者(除運送用之包裝以外)。
  2. 耗材(包含但不限於墨水匣、碳粉匣、紙張、筆類墨水、清潔劑補充包等)之商品包裝已拆封者(除運送用之包裝以外)。
  3. 衣飾鞋類/寢具/織品(包含但不限於衣褲、鞋子、襪子、泳裝、床單、被套、填充玩具)或之商品缺件(含購買商品、附件、內外包裝、贈品等)或經剪標或下水或商品有不可回復之髒污或磨損痕跡。
  4. 食品、美容/保養用品、內衣褲等消耗性或個人衛生用品、商品銷售頁面上特別載明之商品已拆封者(除運送用之包裝外一切包裝、包括但不限於瓶蓋、封口、封膜等接觸商品內容之包裝部分)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  5. 家電、3C、畫作、電子閱讀器等商品,除商品本身有瑕疵外,退回之商品已拆封(除運送用之包裝外一切包裝、包括但不限於封膜等接觸商品內容之包裝部分、移除封條、拆除吊牌、拆除貼膠或標籤等情形)或已非全新狀態(外觀有刮傷、破損、受潮等)與包裝不完整(缺少商品、附件、原廠外盒、保護袋、配件紙箱、保麗龍、隨貨文件、贈品等)。
  6. 退貨程序請參閱【客服專區→常見問題→誠品線上退貨退款】之說明。
付款/配送