《精通移动app测试实战:技术、工具和案例》图书目录
图书相关链接:
京东网:http://item.jd.com/11891239.html
当当网: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系统基础内容介绍.... 1
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
《精通移动app测试实战:技术、工具和案例》图书目录的更多相关文章
- 关于《精通移动App测试实战:技术、工具和案例》图书勘误信息
首先,对由于我们工作的疏忽向<精通移动App测试实战:技术.工具和案例>读者朋友们表示歉意,同时已将这些问题反馈给了出版社编辑同志,再版时将会统一修正: 其次,勘误信息请参看附件pdf文档 ...
- 《精通移动app测试实战:技术、工具和案例》新书上市
本书是测试专家.性能测试专家.专业畅销书作者--于涌,多年实战经验的总结,涵盖主流的测试工具,包括众多的测试实例,涵盖单元测试.功能测试.性能测试.UI测试.手游测试.自动化测试.测试用例管理.持续集 ...
- 精通移动app测试实战
- 移动App测试实战—专项测试
我们在进行了手工的功能测试之后,也开发了一些自动化测试用例,并且做了性能测试之后,测试工作看似比较完整了.但是当我们的App在大量的用户那里被安装和使用的时候,还是会有很多我们之前没有预料的问题 ...
- 移动测试(web和app)及app测试实战
移动测试androidiosapp上 原生GUI 混合应用H5 web端兼容性浏览器测试需要的内容:safari 浏览器edge浏览器ie11浏览器firefox浏览器chrome浏览器 国内360浏 ...
- 《移动App测试实战》读书笔记
第一章 概述 什么是移动产品? 移动产品是一个可以在移动设备上安装的App,或者一个可以在移动设备上访问的定制页面. 1.1 研发流程 互联网产品的研发过程主要涉及以下职位分工. 产品经理:负责产品方 ...
- APP测试实用小工具
1.ADB万能驱动 http://pan.baidu.com/s/1jIJPwhS 2.安卓手机屏幕共享 http://pan.baidu.com/s/1nv6ma1b 3.IOS手机屏幕共享 htt ...
- APP测试常用工具以及框架
APP测试常用工具以及框架 1)纯白盒方式的测试,Monkey.一般是开发用的比较多,动手能力强的同学可以自己去尝试下! 2)偏白盒的robotium,这家伙号称是黑盒,但是本人不太认同- 因为使用r ...
- App测试工具大全,收藏这篇就够了
随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用.除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一 ...
随机推荐
- js完美转换阿拉伯数字为数字大写(原创)
啥都不说,直接上代码: //阿拉伯数字转换为简写汉字 function Arabia_To_SimplifiedChinese(Num) { for (i = Num.length - 1; i &g ...
- 磁盘配额quota应用
1.文件系统支持 quota是针对整个文件系统来进行规划,所以我们得先查一下/home是否是个独立的文件系统. [root@Monitor home]# df -h /home Filesystem ...
- 我发现调用boostrap的弹框
在引用了boostrap.js和boostrap.css之后 本来boostrap是基于jQuery的.但是我们的项目里没有用jQuery,而是用的zepto. 调用boostrap的弹框有两种方式: ...
- spring 源码下载地址
1, github: https://github.com/spring-projects/spring-framework SVN: https://github.com/spring-projec ...
- android 的touch event分析
android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解. 一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN ...
- [vb.net]判断窗体是否已打开
1.使用OpenForms if my.Application.OpenForms.Item("FormName") isnot nothing then搜索 do somethi ...
- LeetCode OJ-- Valid Number **@
https://oj.leetcode.com/problems/valid-number/ 判断给的串,是不是合理的 数字形式 主要问题在需求定义上吧 class Solution { public ...
- 再见Unity3d的死循环
前两天看见http://www.manew.com/thread-89909-1-1.html这篇译文之前几个小时刚好解决了一个莫名的死循环问题,然后忍不住要把另外一种方法告诉蛮友们.这个方法不需要知 ...
- KVC笔记
利用KVC可以随意修改一个对象的属性或者成员变量(并且私有的也可以修改) 示例代码: 示例一: Person *p = [[Person alloc] init]; p.dog = [[Dog al ...
- Nginx + tornado + supervisor部署
参考链接:supervisor + Tornado + Nginx 使用详解, 用tornado ,Supervisord ,nginx架网站, tornado官方文档 项目文档树: . ├── ch ...