标签分类
当前位置:首页 > 移动开发电子书 > APP测试电子书网盘下载
精通引动APP测试实战:技术、工具和案例 精通引动APP测试实战:技术、工具和案例
dfjk_djk

dfjk_djk 提供上传

资源
39
粉丝
45
喜欢
202
评论
3

    精通引动APP测试实战:技术、工具和案例 PDF 高清版

    APP测试电子书
    • 发布时间:

    给大家带来的一篇关于APP测试相关的电子书资源,介绍了关于APP测试、实战、技术、工具、案例方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小92.9 MB,于涌,王磊,曹志编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.4,更多相关的学习资源可以参阅 移动开发电子书、等栏目。

  • 精通引动APP测试实战:技术、工具和案例 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1wYr4sBPPynlvasPNKcf1FQ
  • 分享码:d3h7
  • 精通引动APP测试实战:技术、工具和案例 PDF

    精通引动APP测试实战:技术、工具和案例全面讲解了移动平台测试方面的技术、技巧、工具和测试用例等实战知识。内容涵盖主流的测试工具,包括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 设计程序的原型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 参数
    • 的示例讲解 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 启动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

    上一篇:卡尔曼滤波原理及应用:MATLAB仿真  下一篇:第三方JavaScript编程

    展开 +

    收起 -

    码小辫二维码
     

    APP测试相关电子书
    学习笔记
    网友NO.455023

    浅析php如何实现App常用的秒发功能

    前言 想象一下,我们平常发朋友圈的时候,N张图片配上文字,嗖的一下就发出去了,不带任何拖泥带水的那种,体验感觉好爽~。 但是我们停下来用技术手段思考一下,这可能吗?有些2G网络最多也就几十K网速,我们的图片随便一张都几M,即使压缩过也有几百K,怎么可能瞬间发出消息呢? 现在想想,是不是有些诡异呢~ 其实吧,众多社交软件(微博,微信)都是用了一种秒发机制。他并不是真的先去发送然后发送完毕再告诉你发送成功,而是直接告诉你发送成功,然后后台再偷偷去上传你发的东西,所以在网速不好的时候我们会经常发现一个现象,刚开始发出的朋友圈刚开始很正常,但是过了几分钟后,提示我们发送失败!这很很尴尬啊,明明刚开始你什么也没说啊,到了最关键的时候你告诉我不行了.. 不要被高大上的技术吓到了,无非就是做了一些小技巧而已,真的很基础,但是也真的很实用。 在讨论技术前首先声明一些初始条件。 1.对数据库表结构进行了一些特殊改造: 朋友圈内容表有一个特殊的字段status, status值有两种情况,值可以为1或者2, 值为1是朋友圈未发布。 值为2是朋友圈已发布。 (暂时看不懂为什么这样做的同学,可以先继续阅读,后面会讲解) 2.此篇文章的秒发功能指的有图片的情况下使用,因……

    网友NO.479440

    浅谈JavaScript中的apply/call/bind和this的使用

    fun.apply(context,[argsArray]) 立即调用fun,同时将fun函数原来的this指向传入的新context对象,实现同一个方法在不同对象上重复使用。 context:传入的对象,替代fun函数原来的this; argsArray:一个数组或者类数组对象,其中的数组参数会被展开作为单独的实参传给 fun 函数,需要注意参数的顺序。 fun.call(context,[arg1],[arg2],[…]) 同apply,只是参数列表不同,call的参数需要分开一个一个传入。如果不知道参数个数,则使用apply。 使用: Math.max() //只接收单独的参数,通过下面的方法可以在数组上面使用max方法: Math.max.apply(null, array); //会将array数组参数展开成单独的参数再传入 Array.prototype.push.apply(arr1,arr2); //将一个数组拆开push到另一个数组中;不用apply则会将后续数组参数当成一个元素push进去。 Array.prototype.slice.call(arguments); //在类素组对象上使用slice方法 function isArray(obj){ return Object.prototype.toString.call(obj) === '[object Array]' ;} //验证是否是数组 fun.bind(context,[arg1],[arg2],[…]) 使fun方法执行的context永不变。 arg1:要传递到新函数的参数列表 返回一个函数供后续调用,其函数体和原函数fun一样,但新函数的this指向新传入的context对象。新函数会具有bind方法指定的初始参数arg1/arg2...,后续调用新函数时的实参要往已有参数的后面排。 //原来的函数有……

    网友NO.248645

    详解application.properties和application.yml文件的区别

    在springboot框架里进行项目开始时,我们在resource文件夹里可以存放配置文件,而格式可以有两种,properties和yml,前者是扁平的k/v格式,而后者是yml的树型结构,我们建议使用后者,因为它的可读性更强,如果现有是properties,也可以转换成yml格式,我们把properies里按.去拆分即可。 一般上来说,当我们创建一个SpringBoot项目时,IDE会默认帮我们创建一个application.properties配置文件。有些朋友习惯把.properties文件改成.yml文件。那么这两种文件类型有什么区别呢? 区别 1.内容格式比较: .properties文件,通过.来连接,通过=来赋值,结构上,没有分层的感觉,但比较直接。 .yml文件,通过:来分层,结构上,有比较明显的层次感,最后key赋值的:后需要留一个空格 2.执行顺序 如果工程中同时存在application.properties文件和 application.yml文件,yml文件会先加载,而后加载的properties文件会覆盖yml文件。所以建议工程中,只使用其中一种类型的文件即可。 案例 application.properties: server.port=8081 spring.datasource.type=org.apache.tomcat.jdbc.pool.DataSourcespring.datasource.url=jdbc:mysql://aliyuncs.com:3306/database?useUnicode=trueautoReconnect=truespring.datasource.username=rootspring.datasource.password=******spring.datasource.driver-class-name=com.mysql.jdbc.Driver application.yml: server: port: 8082 spring: datasourc……

    网友NO.371005

    Python基于list的append和pop方法实现堆栈与队列功能示例

    本文实例讲述了Python基于list的append和pop方法实现堆栈与队列功能。分享给大家供大家参考,具体如下: #coding=utf8'''''堆栈:堆栈是一个后进先出(LIFO)的数据结构。在栈上"push"元素是个常用术语,意思是把一个对象添加到堆栈中。删除一个元素,可以把它"pop"出堆栈。队列:队列是一种先进先出(FIFO)的数据类型。新的元素通过"入队"的方式添加进队列的末尾,"出对"就是从队列的头部删除。'''#创建列表def creatList(): initList=[] try: while True: #从键上输入元素 inputItem=raw_input(u"Enter item(输入quit结束输入):") #当输入字符不是quit,把元素加入列表 #当输入字符是quit,结束输入 if inputItem!="quit": initList.append(inputItem.strip()) else: break #返回输入列表 return initList except Exception,e: print "Create List Error:",e#删除列表的第一个元素并返回删除元素def popTheFirst(List): try: #判断列表中是否存在元素 #如果存在元素,删除并返回第一个元素 #如果不存在,给出提示信息 if len(List)0: return List.pop(0) else: print "The list is empty..." except Exception,e: print "pop the first item Error:",e#删除列表的最后元素并返回删除元素def popTheLast(List): try: #判断列表中是否存在元素 #如果存在元素,删除并返回最后元素 #如果不存在,给出提示信息 if len(List)0: #pop函数默认删除最后一个元素 return List.p……

    Copyright 2018-2019 xz577.com 码农之家

    版权责任说明