分享

精通移动App测试实战:技术、工具和案例

 阿K_world 2016-04-14
【内 容 提 要】

  本书全面讲解了移动平台测试方面的技术、技巧、工具和测试用例等实战知识。内容涵盖主流的测试工具,包括JUnit、Monkey、MonkeyRunner、Robotium、UIAutomator、Appium以及性能测试利器LoadRunner、手机端性能监控工具Emmagee等;重点讲解移动平台的主要实战技术,如单元测试、功能测试、性能测试、UI测试、手游测试、自动化测试、测试用例管理、持续集成、脚本录制等。书中结合实例对各个工具进行深入讲解,真正做到学以致用。本书既是一本真正帮助读者学习移动测试中用到的所有技术的实战教程,也是一本名副其实的、贴近实战的移动端测试权威指南。

  本书适合测试初学者、测试工程师、测试经理、移动开发人员和游戏开发人员学习借鉴,也可以作为大专院校相关专业师生和培训学校的教学用书。

  【目  录】

  第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 设计程序的原型UI24

  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 参数的示例讲解133

  4.3.5 --pct-motion 参数的示例讲解133

  4.3.6 --pct-trackball 参数的示例讲解133

  4.3.7 --pct-nav 参数的示例讲解134

  4.3.8 --pct-majornav 参数的示例讲解134

  4.3.9 --pct-syskeys 参数的示例讲解134

  4.3.10 --pct-appswitch 参数的示例讲解135

  4.3.11 --pct-anyevent 参数的示例讲解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 启动Activity176


第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
51Testing软件测试网将在近期对本书部分章节进行独家连载,敬请关注

查看更多《51Testing软件测试网作品系列》书籍:http://www./html/36/category-catid-136.html

随点随学,博为峰网校让学习如此简单>>

44/4  51Testing软件测试网将在近期对本书部分章节进行独家连载,敬请关注

  查看更多《51Testing软件测试网作品系列》书籍:http://www./html/36/category-catid-136.html


  随点随学,博为峰网校让学习如此简单>>

  

  43/41234>

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多