圖書相關連接:html
京東網:http://item.jd.com/11891239.htmlshell
噹噹網:http://product.dangdang.com/23924601.html瀏覽器
亞馬遜:https://www.amazon.cn/%E5%9B%BE%E4%B9%A6/dp/B01D10NSKE網絡
互動網:http://product.china-pub.com/4931271架構
第1章 Android系統基礎內容介紹.... 1app
1.1 Android系統介紹... 2框架
1.2 Android系統架構... 2工具
1.3 Android權限系統... 4佈局
1.4 Android相關的一些屬性簡介... 4性能
1.5 搭建Android開發環境... 4
1.5.1 JDK的安裝與配置... 5
1.5.2 Android SDK的安裝... 8
1.5.3 Eclipse的安裝... 11
1.5.4 ADT的安裝與配置... 12
1.5.5 集成版本的下載... 15
1.6 建立模擬器... 15
1.7 建立一個Android項目... 20
1.7.1 建立一個新的Android項目... 20
1.7.2 如何填寫Android項目信息... 20
1.7.3 配置Android項目目錄和活動信息 21
1.7.4 設計程序的原型UI 24
1.7.5 依據UI原型實現Android項目的佈局文件 24
1.7.6 佈局文件內容的理解... 26
1.7.7 Android項目的源代碼實現... 27
1.7.8 AndroidManifest.xml文件講解 30
1.7.9 運行Android項目... 33
第2章 JUnit框架基礎.... 37
2.1 JUnit框架介紹... 38
2.2 JUnit在Android開發中的應用... 39
2.2.1 單元測試的重要性... 39
2.2.2 單元測試實施者... 39
2.2.3 單元測試測試哪些內容... 40
2.2.4 單元測試不測試哪些內容... 40
2.2.5 建立基於Android的測試項目 40
2.3 應用JUnit對Android項目進行單元測試 42
2.3.1 JUnit基於Android項目TestCase的應用 42
2.3.2 JUnit基於Android項目TestSuite的應用 50
第3章 ADB命令.... 57
3.1 Android調試橋介紹... 58
3.2 ADB相關指令實例講解... 60
3.2.1 adb devices指令實例講解... 60
3.2.2 adb install指令實例講解... 62
3.2.3 adb uninstall指令實例講解... 63
3.2.4 adb pull指令實例講解... 67
3.2.5 adb push指令實例講解... 70
3.2.6 adb shell指令實例講解... 73
3.2.7 adb shell dumpsys battery指令實例講解 75
3.2.8 adb shell dumpsys WiFi指令實例講解 76
3.2.9 adb shell dumpsys power指令實例講解 77
3.2.10 adb shell dumpsys telephony.registry指令實例講解 78
3.2.11 adb shell cat /proc/cpuinfo指令實例講解 79
3.2.12 adb shell cat /proc/meminfo指令實例講解 80
3.2.13 adb shell cat /proc/iomem指令實例講解 80
3.2.14 獲取手機型號指令實例講解 81
3.2.15 獲取手機處理器信息指令實例講解 81
3.2.16 獲取手機內存信息指令實例講解 82
3.2.17 獲取手機屏幕分辨率信息指令實例講解 82
3.2.18 獲取手機系統版本信息指令實例講解 83
3.2.19 獲取手機內核版本信息指令實例講解 83
3.2.20 獲取手機運營商信息指令實例講解 83
3.2.21 獲取手機網絡類型信息指令實例講解 83
3.2.22 獲取手機串號信息指令實例講解 84
3.2.23 adb shell df指令實例講解... 84
3.2.24 adb shell dmesg指令實例講解 84
3.2.25 adb shell dumpstate指令實例講解 86
3.2.26 adb get-serialno指令實例講解 87
3.2.27 adb get-state指令實例講解... 87
3.2.28 adb logcat指令實例講解... 88
3.2.29 adb bugreport指令實例講解... 90
3.2.30 adb jdwp指令實例講解... 91
3.2.31 adb start-server指令實例講解 92
3.2.32 adb kill-server指令實例講解 92
3.2.33 adb forward指令實例講解... 92
3.2.34 am指令實例講解... 93
3.2.35 pm指令實例講解... 94
3.3 手機模擬器相關的一些操做命令
實例講解... 95
3.3.1 模擬器上模擬手機來電命令實例講解 95
3.3.2 模擬器上模擬發送短信命令實例講解 98
3.3.3 模擬器上模擬網絡相關命令實例講解 98
3.3.4 修改模擬器的大小比例相關命令實例講解 100
3.3.5 模擬器的其餘命令及如何退出模擬器控制檯 100
3.4 模擬器相關命令實例講解... 101
3.4.1 建立安卓虛擬設備命令實例講解 103
3.4.2 重命名模擬器命令實例講解... 107
3.4.3 查看模擬器命令實例講解... 108
3.4.4 刪除模擬器命令實例講解... 109
3.4.5 啓動模擬器命令實例講解... 109
3.5 建立安卓項目相關命令實例講解... 110
3.6 基於控制檯命令行相關命令使用指導 112
第4章 Monkey工具使用........................ 115
4.1 Monkey工具簡介... 116
4.2 Monkey演示示例... 116
4.2.1 第一個Monkey示例(針對日曆應用程序) 116
4.2.2 如何查看Monkey執行過程信息 118
4.2.3 如何保持設定各種事件執行比例 129
4.3 Monkey相關參數講解... 130
4.3.1 -s參數的示例講解... 131
4.3.2 -p參數的示例講解... 132
4.3.3 --throttle參數的示例講解... 133
4.3.4 --pct-touch <percent>參數的示例講解 133
4.3.5 --pct-motion <percent>參數的示例講解 133
4.3.6 --pct-trackball <percent>參數的示例講解 133
4.3.7 --pct-nav <percent>參數的示例講解 134
4.3.8 --pct-majornav <percent>參數的示例講解 134
4.3.9 --pct-syskeys <percent>參數的示例講解 134
4.3.10 --pct-appswitch <percent>參數的示例講解 135
4.3.11 --pct-anyevent <percent>參數的示例講解 135
4.3.12 --hprof參數的示例講解... 135
4.3.13 --ignore-crashes參數的示例講解 135
4.3.14 --ignore-timeouts參數的示例講解 136
4.3.15 --ignore-security-exceptions參數的示例講解 136
4.3.16 --kill-process-after-error參數的示例講解 136
4.3.17 --monitor-native-crashes參數的示例講解 137
4.3.18 --wait-dbg參數的示例講解... 137
4.3.19 Monkey綜合示例... 137
4.4 Monkey相關命令介紹... 137
4.4.1 DispatchPointer命令介紹... 149
4.4.2 DispatchTrackball命令介紹... 151
4.4.3 DispatchKey命令介紹... 152
4.4.4 DispatchFlip命令介紹... 153
4.4.5 LaunchActivity命令介紹... 153
4.4.6 LaunchInstrumentation命令介紹 153
4.4.7 UserWait命令介紹... 153
4.4.8 RunCmd命令介紹... 153
4.4.9 Tap命令介紹... 154
4.4.10 ProfileWait命令介紹... 154
4.4.11 DeviceWakeUp命令介紹... 154
4.4.12 DispatchString命令介紹... 154
4.5 Monkey如何執行腳本... 154
第5章 MonkeyRunner工具使用........ 159
5.1 MonkeyRunner工具簡介... 160
5.2 MonkeyRunner安裝部署... 160
5.3 MonkeyRunner演示示例... 163
5.3.1 第一個MonkeyRunner示例(針對遊戲) 163
5.3.2 如何利用monkey_recorder.py進行腳本錄製 163
5.3.3 如何利用monkey_playback.py進行腳本回放 169
5.3.4 如何利用monkeyhelp.html文件獲取讀者想要的 170
5.4 MonkeyRunner腳本手工編寫... 171
5.4.1 MonkeyRunner關鍵類介紹... 171
5.4.2 MonkeyRunner腳本編寫... 172
5.4.3 MonkeyRunner腳本執行... 173
5.5 MonkeyRunner樣例腳本... 174
5.5.1 按Home鍵... 174
5.5.2 設備重啓... 175
5.5.3 設備喚醒... 175
5.5.4 按菜單鍵... 175
5.5.5 輸入內容... 175
5.5.6 控制多個設備... 175
5.5.7 對比截屏和已存在圖片... 175
5.5.8 單擊操做... 176
5.5.9 安裝APK包... 176
5.5.10 卸載APK包... 176
5.5.11 啓動Activity. 176
第6章 Robotium自動化測試框架...... 177
6.1 Robotium自動化測試框架簡介... 178
6.2 Robotium環境搭建... 178
6.3 第一個Robotium示例(針對記事本應用程序).. 178
6.3.1 記事本樣例下載... 178
6.3.2 記事本樣例項目導入到Eclipse 179
6.3.3 記事本樣例項目運行... 182
6.3.4 記事本樣例功能介紹... 184
6.3.5 Robotium測試用例項目目錄結構 184
6.3.6 Robotium測試用例實現代碼... 185
6.3.7 Robotium測試用例代碼解析... 187
6.3.8 測試用例設計思路分析... 194
6.3.9 Robotium測試用例執行過程... 195
6.4 用Robotium實現對APK或有源碼的項目實施測試 200
6.4.1 基於有源代碼應用的Robotium自動化測試 200
6.4.2 基於APK包應用的Robotium測試項目 207
6.5 用Robotium Recorder錄製腳本... 214
6.5.1 Robotium Recorder插件的安裝 214
6.5.2 應用Robotium Recorder錄製有源代碼的項目 217
6.5.3 應用Robotium Recorder錄製APK包應用 223
6.6 Robotium獲取控件的方法... 232
6.6.1 根據控件的ID獲取控件... 232
6.6.2 根據光標位置獲取控件... 238
6.7 測試用例腳本的批量運行... 241
6.7.1 測試用例管理... 241
6.7.2 測試用例執行... 249
6.7.3 生成測試報告... 254
6.8 持續集成... 259
6.8.1 什麼叫持續集成... 259
6.8.2 持續集成環境部署... 260
6.8.3 建立Jenkins job. 264
6.8.4 生成build.xml文件... 268
6.8.5 安裝測試包和被測試包... 272
6.8.6 Jenkins配置測試報告... 273
6.8.7 驗證持續集成成果... 275
6.8.8 關於持續集成思路拓展... 278
第7章 自動化測試工具—UI Automator
實戰.................................................... 281
7.1 爲何選擇UI Automator 282
7.2 UI Automator演示示例... 282
7.2.1 UI Automator Viewer工具使用介紹 283
7.2.2 應用UI Automator等完成單元測試用例設計基本步驟 288
7.2.3 理解UI Automator Viewer工具捕獲的元素屬性信息 291
7.2.4 UI Automator運行環境搭建過程 292
7.2.5 編寫第一個UI Automator測試用例 296
7.2.6 測試用例實現代碼及其講解... 302
7.2.7 查看已安裝的SDK版本... 308
7.2.8 建立build.xml等相關文件... 309
7.2.9 編譯生成JAR文件... 311
7.2.10 上傳生成JAR文件到手機... 313
7.2.11 運行測試用例並分析測試結果 313
7.3 UI Automator主要的對象類... 316
7.3.1 UiDevice類及其接口調用實例 316
7.3.2 UiSelector類及其接口調用實例 318
7.3.3 UiObject類及其接口調用實例 320
7.3.4 UiCollection類及其接口調用實例 326
7.3.5 UiWatcher類及其接口調用實例 327
7.3.6 UiScrollable類及其接口調用實例 329
7.3.7 Configurator類及其接口調用實例 332
7.4 UI Automator常見問題解答... 333
7.4.1 UI Automator對中文支持問題 333
7.4.2 UI Automator如何執行單個類裏的單個測試用例 334
7.4.3 UI Automator如何執行單個類裏的多個測試用例 336
7.4.4 UI Automator腳本示例... 338
第8章 自動化測試工具—Appium實戰 341
8.1 爲何選擇Appium.. 342
8.1.1 Appium的理念... 342
8.1.2 Appium的設計... 342
8.1.3 Appium的相關概念... 343
8.2 Appium環境部署... 344
8.2.1 Windows環境部署... 344
8.2.2 Appium樣例程序的下載... 354
8.2.3 Selenium類庫的下載... 355
8.2.4 創建測試工程... 355
8.3 Appium元素定位的3個利器... 371
8.3.1 應用UIAutomator Viewer得到元素信息的實例 371
8.3.2 應用Inspector得到元素信息的實例 378
8.3.3 應用Chrome瀏覽器ADB插件得到元素信息的實例 382
8.4 多種界面控件的定位方法介紹... 386
8.4.1 根據ID定位元素... 386
8.4.2 根據Name定位元素... 386
8.4.3 根據ClassName定位元素... 386
8.4.4 根據Content-desc定位元素... 387
8.4.5 根據Xpath定位元素... 387
8.5 多種界面控件的操做方法介紹... 388
8.5.1 長按操做... 389
8.5.2 拖曳操做... 391
8.5.3 滑動操做... 394
8.5.4 多點操做... 396
8.6 捕獲異常、建立快照... 397
8.6.1 安裝TestNG插件... 397
8.6.2 建立測試項目... 400
8.6.3 建立異常監聽類... 404
8.6.4 建立測試項目類... 404
8.6.5 測試項目運行結果... 407
第9章 移動平臺性能測試......................... 411
9.1 移動平臺性能測試簡介... 412
9.1.1 性能測試的8大分類... 412
9.1.2 移動終端的性能指標... 413
9.2 移動端性能測試工具... 414
9.2.1 TraceView工具使用介紹... 415
9.2.2 SysTrace工具使用介紹... 417
9.2.3 Emmagee工具使用介紹... 422
9.2.4 查看應用啓動耗時... 426
9.2.5 得到電池電量和電池溫度... 427
9.2.6 得到最耗資源的應用... 428
9.2.7 得到手機設備電池電量信息... 430
9.2.8 得到手機應用幀率信息... 430
9.3 LoadRunner在移動端性能測試的應用 437