软件测试策略、设计及其自动化实战——Linux、Android、Windows、Web的全面软件测试
1星价
¥42.4
(7.7折)
2星价¥42.4
定价¥55.0
图文详情
- ISBN:9787560652627
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:26cm
- 页数:374页
- 出版时间:2019-06-01
- 条形码:9787560652627 ; 978-7-5606-5262-7
本书特色
本书主要介绍软件测试的策略、建模、设计与不同平台的自动化技术。全书分为两大部分:*部分包括第1~5章,主要介绍前沿的测试理论、测试流程、测试策略模型、测试建模、测试设计和用例设计、探索性测试、测试质量度量与改进、自动化基础知识、自动化框架的开发等,可帮助学习者成长为优秀的测试架构师;第二部分包括第6~11章,针对Linux、Android、Web、Windows下的用户界面UI、命令行CLI、单元接口等,分别论述了测试方法、当前流行的自动化技术与工具以及实际案例与实践总结,可以提升实际项目的自动化覆盖率,帮助学习者成长为全面的自动化测试专家。本书涵盖了软件测试各个方面的知识,介绍了各种先进的前沿技术,涵盖了理论和实际案例,内容全面。本书适合App测试人员、移动设备测试人员、Web测试人员、驱动测试人员、Linux测试人员、Windows测试人员、自动化测试人员、质量保证人员等阅读学习,也适合作为软件测试课程和测试培训的参考资料,还适合作为大专院校相关专业和培训学校的教材。
内容简介
本书主要介绍软件测试的策略、建模、设计与不同平台的自动化技术。全书分为两大部分: **部分包括第1-5章, 主要介绍各个前沿的测试技术、测试流程、测试策略模型、测试建模、测试设计和用例设计、探索性测试、测试质量度量与改进、自动化基础知识、自动化框架的开发等, 可帮助学习者成长为优秀的测试架构师: 第二部分包括第6-11章, 针对Linux、Android、Web、Windows下的用户界面UI、命令行CLI、单元接口等, 分别论述了测试方法、当前流行的自动化技术与工具以及实际案例与实践总结, 可以提升实际项目的自动化覆盖率, 帮助学习者成为全面的自动化测试专家。
目录
第1章 软件测试**理论 1
1.1 软件测试知识 1
1.1.1 软件测试 1
1.1.2 软件缺陷 1
1.1.3 软件测试应遵循的七原则 2
1.2 软件测试方法 3
1.2.1 功能测试法 3
1.2.2 性能测试法与流程 3
1.2.3 负载测试法 4
1.2.4 压力测试法与驱动压力测试案例 4
1.2.5 安全性测试法与案例 6
1.2.6 UI与UE测试法 8
1.2.7 国际化、本地化、全球化测试法 9
1.2.8 安装与卸载测试法 10
1.2.9 兼容性测试法与案例 10
1.2.10 故障转移与恢复性测试法 11
1.2.11 容量测试法 12
1.2.12 可靠性测试法与案例 12
1.2.13 可访问性测试法 12
1.3 软件产品质量模型 13
1.3.1 功能性 13
1.3.2 可靠性 13
1.3.3 易用性 14
1.3.4 效率 15
1.3.5 可维护性 15
1.3.6 可移植性 15
1.3.7 质量属性与测试类型的对应关系 16
1.3.8 质量属性的定制化使用 16
1.4 软件开发生命周期模型 17
1.4.1 大棒模型 17
1.4.2 边做边改模型 17
1.4.3 瀑布模型 17
1.4.4 V模型 17
1.4.5 快速原型模型 18
1.4.6 螺旋模型 18
1.4.7 敏捷软件开发 18
1.4.8 持续集成与常见问题说明 19
1.5 漫游测试的方法与管理 20
1.5.1 常用的漫游测试法 20
1.5.2 探索性软件测试法 20
1.5.3 漫游测试的选取与定制化 25
1.6 软件测试分类 26
1.6.1 黑盒、白盒、灰盒测试 26
1.6.2 静态、动态测试 27
1.6.3 单元、集成、系统、验收测试 27
1.7 测试过程阶段 28
1.7.1 测试计划与控制阶段 28
1.7.2 测试设计阶段 29
1.7.3 测试执行阶段 29
1.7.4 评估结束准则和测试报告阶段 30
1.7.5 测试结束活动 31
第2章 测试策略模型 32
2.1 测试策略概述 32
2.1.1 测试活动步骤说明 32
2.1.2 测试策略概述 32
2.1.3 回归测试 32
2.1.4 BVT测试与冒烟测试的区别 33
2.2 启发式测试策略模型(HTSM) 33
2.2.1 启发式测试策略模型(HTSM) 33
2.2.2 启发式测试策略模型(HTSM)的定制化 36
2.3 Google ACC建模 37
2.4 测试策略TEmb方法 40
2.4.1 通用元素LITO 41
2.4.2 产品特性与案例说明 42
2.4.3 风险分析 43
2.4.4 组合测试策略的机制与案例 46
第3章 测试建模、设计技术与质量管理 48
3.1 测试设计技术 48
3.1.1 功能列表 48
3.1.2 功能交互分析 48
3.1.3 输入输出模型 49
3.1.4 状态机模型 49
3.1.5 组合分析模型 50
3.1.6 错误推测法 51
3.2 测试用例设计方法 52
3.2.1 等价类划分法 52
3.2.2 边界值分析法 53
3.2.3 判定表因果图法 55
3.2.4 测试用例及其检查点 55
3.3 测试建模技术 56
3.3.1 测试模型概述 56
3.3.2 基于模型的测试(MBT) 56
3.3.3 常用的基于模型的测试工具 57
3.4 如何进行测试设计与建模 58
3.4.1 了解目标和项目环境信息 58
3.4.2 基于5W1H的需求分析 58
3.4.3 MFQ测试设计模型 59
3.4.4 PPDCS测试建模步骤 59
3.5 缺陷分析法 60
3.5.1 缺陷分析方法 60
3.5.2 ODC缺陷分析法 62
3.5.3 四象限分析法 64
3.5.4 Gompertz模型分析法 64
3.5.5 根本原因分析(RCA) 65
3.6 软件质量评估 65
3.6.1 测试覆盖率评估 66
3.6.2 测试过程评估 66
3.6.3 质量评估 67
3.6.4 版本质量评估 67
3.7 质量管理 68
3.7.1 软件质量管理三部曲 68
3.7.2 能力成熟度模型(CMMI) 69
3.7.3 全面质量管理(TQM) 69
3.7.4 QC旧七工具 70
3.7.5 QC新七工具 72
3.7.6 事后回顾(AAR) 72
3.7.7 项目回顾会议 73
第4章 自动化测试**理论 74
4.1 自动化测试知识 74
4.1.1 软件测试自动化概述 74
4.1.2 测试金字塔(Test Pyramid) 75
4.1.3 蛋筒冰激凌模式 76
4.2 自动化测试工具知识 77
4.2.1 测试工具分类 77
4.2.2 单元、接口测试工具的实现原理 77
4.2.3 UI测试工具的实现原理 77
4.2.4 Web UI测试工具的实现原理 78
4.2.5 性能测试工具的实现原理 78
4.3 自动化测试脚本技术 79
4.3.1 线性脚本技术与启发 79
4.3.2 结构化脚本技术与启发 79
4.3.3 共享脚本技术与启发 80
4.3.4 数据驱动脚本技术与启发 80
4.3.5 关键字驱动脚本技术与启发 81
4.3.6 自动化成熟度等级 82
4.3.7 自动化脚本衡量标准与提升法 82
4.4 自动错误预防(AEP)机制 83
第5章 一键式测试自动化框架 84
5.1 一键式测试自动化概述 84
5.1.1 Python 概述 84
5.1.2 手工测试流程 84
5.1.3 一键式测试流程自动化 85
5.1.4 环境准备 85
5.2 配置文件及其读取介绍 86
5.3 自动化下载源码和MD5校验 88
5.3.1 SVN自动化下载程式 88
5.3.2 FTP自动化下载待测标的物 90
5.3.3 MD5自动化校验 97
5.3.4 自动化脚本调用执行 101
5.4 自动化编译和打包 102
5.4.1 Windows下的自动化编译 102
5.4.2 Windows下自动化编译的调用步骤 104
5.4.3 Linux下的自动化编译打包 104
5.5 自动化分发测试工具 105
5.5.1 自动化传输文件到DUT端 105
5.5.2 自动化脚本调用步骤 106
5.6 自动化执行测试 107
5.6.1 远程调用自动化 107
5.6.2 自动化执行测试 107
5.7 自动化上传测试结果到Testlink 107
5.7.1 Testlink API介绍 107
5.7.2 上传测试结果到Testlink的实现代码 109
5.7.3 实现自动化上传结果到Testlink 110
5.8 自动化对比不同版本的源码并发送邮件 111
5.8.1 自动化对比源码 111
5.8.2 自动化对比源码调用步骤 112
5.8.3 自动化发送邮件 112
5.8.4 自动化发送邮件调用步骤 114
5.9 自动化框架 114
5.9.1 框架总调用 114
5.9.2 精准测试技术 115
5.10 性能监测 116
5.10.1 Psutil介绍 116
5.10.2 Psutil的实例展示 117
5.11 自动化画图 125
5.11.1 基于Excel的自动化画图 125
5.11.2 基于Highcharts的自动化画图 127
5.11.3 基于Gnuplot的自动化画图 134
第6章 单元自动化测试 136
6.1 单元测试的白盒测试 136
6.2 接口测试设计技术 138
6.3 Python的Unittest框架 142
6.3.1 Unittest概述与案例 142
6.3.2 管理测试用例与案例 144
6.3.3 discover方法与案例 148
6.3.4 跳过测试法与案例 149
6.3.5 HTMLTestRunner生成测试报告与案例说明 150
6.3.6 HTMLTestRunner集成测试报告与案例说明 151
6.4 跨平台C++ Googletest框架 152
6.4.1 Googletest概述 152
6.4.2 参数化介绍 153
6.4.3 Android中的Gtest测试框架 154
6.4.4 Android Gtest案例 157
6.4.5 GCOV与LCOV代码覆盖率测试 162
6.4.6 GCOV和 LCOV的使用方法与案例 163
6.5 其他语言的单元测试框架 165
6.5.1 Java的单元测试框架与案例介绍 165
6.5.2 C#的单元测试框架Nunit 166
第7章 Linux测试 167
7.1 Linux OS测试类型 167
7.1.1 Linux OS压力测试与案例 167
7.1.2 Linux OS稳定性测试与案例 169
7.1.3 Linux OS性能测试与案例 170
7.1.4 Linux OS兼容性测试 172
7.1.5 Linux API测试 173
7.1.6 Linux的其他测试 173
7.2 命令行类的CLI自动化测试 173
7.2.1 CLI自动化技术 173
7.2.2 shell编程实现自动化案例 173
7.2.3 Telnet自动化登录案例 176
7.2.4 FTP自动化登录与上传文件案例 177
7.2.5 SSH自动化登录案例 178
7.3 Linux GUI自动化LDTP测试 180
7.3.1 LDTP自动化框架技术 180
7.3.2 LDTP的安装 181
7.3.3 LDTP具体使用案例说明 181
7.3.4 LDTP获取应用程序信息 182
7.3.5 ldtpeditor录制脚本 182
7.3.6 Gedit案例讲解 182
7.3.7 Firefox案例讲解 183
7.4 Linux GUI自动化X11::GUITest 184
7.4.1 X11::GUITest的安装 184
7.4.2 X11:GUITest案例讲解 185
7.4.3 Recorder安装与使用 187
7.5 LTP内核测试工具介绍 187
7.5.1 LTP介绍 187
7.5.2 STAF介绍 189
7.5.3 STAF与LTP的集成 189
7.6 Linux常用系列工具 190
7.6.1 Linux CPU性能分析系列工具 190
7.6.2 Linux内存分析系列工具 191
7.6.3 存储系统分析工具 193
7.6.4 网络性能工具 196
7.6.5 磁盘I/O分析系列工具介绍 199
7.6.6 静态分析工具cppcheck与案例 199
7.6.7 性能测试工具lmbench 201
7.6.8 GPU测试工具 201
7.6.9 Screentest测试工具 202
7.6.10 浏览器测试系列工具 202
7.6.11 Docker环境搭建 204
第8章 Android测试 205
8.1 Android技术 205
8.1.1 Android架构 205
8.1.2 Android各架构的自动化技术 206
8.1.3 Android开发环境搭建 207
8.2 Monkey自动化工具 208
8.2.1 Monkey介绍 208
8.2.2 Monkey语法与实际指令 209
8.3 MonkeyRunner自动化工具 210
8.3.1 MonkeyRunner介绍 210
8.3.2 MonkeyRunner API 211
8.3.3 MonkeyDevice API 211
8.3.4 MonkeyImage API与案例 212
8.3.5 MonkeyRunner录制与回放 213
8.3.6 快捷键与案例 214
8.3.7 MonkeyRunner案例说明 215
8.3.8 EasyMonkeyDevice介绍与案例 216
8.4 基于Framework的 Instrumentation自动化工具 218
8.4.1 Junit单元自动化框架介绍与案例 218
8.4.2 Instrumentation介绍 219
8.4.3 hierarchyviewer捕获控件信息 219
8.4.4 创建Instrumentation自动化测试程序案例 221
8.5 基于UI的UI Automator测试工具 224
8.5.1 UIAutomator介绍 224
8.5.2 UI Automator Viewer获取UI元素信息 225
8.5.3 UI Automatior UiObject API 226
8.5.4 UI Automatior UiDevice API 227
8.5.5 UI Automatior UiSelector API 229
8.5.6 UI Automatior UiCollection API 230
8.5.7 UI Automatior UiScrollable API 230
8.5.8 UI Automatior UiWatcher API 231
8.5.9 UI Automator TestCase 232
8.6 基于UI的Robotium自动化工具 232
8.6.1 Robotium介绍 232
8.6.2 基于源码的Robotium自动化与案例 233
8.6.3 基于APK的Robotium自动化与案例 234
8.6.4 UI控件查看工具 236
8.6.5 Recorder录制工具 236
8.7 基于UI的Appium自动化工具 237
8.7.1 Appium介绍 237
8.7.2 Appium安装 237
8.7.3 Appium 的设置界面 238
8.7.4 Appium Inspector与案例说明 241
8.7.5 UI AutomatorViewer工具与案例说明 243
8.7.6 Appium自动化案例说明 245
8.7.7 Pycharm介绍 248
8.7.8 HTMLTestRunner生成测试报告案例1 250
8.7.9 HTMLTestRunner生成测试报告案例2 251
8.7.10 Webview控件识别 256
8.8 Android App测试方法 257
8.8.1 Android应用的硬件特性测试 257
8.8.2 Android应用的内存测试 258
8.8.3 Android应用的流量测试 259
8.8.4 Android不同网络下的测试 260
8.8.5 Android应用的弱网测试与网络模拟工具NEWT 262
8.8.6 Android应用的多任务测试 269
8.8.7 Android应用的消息提示测试 270
8.8.8 Android应用的Dalvik与ART测试 270
8.8.9 Android应用的耗电量测试 270
8.8.10 Android应用的特性测试 271
8.8.11 Android应用的兼容性测试 271
6.8.12 Android应用的安全性测试 271
8.8.13 Android应用的安装卸载测试 272
8.8.14 Android应用的用户体验测试 272
8.8.15 Android应用的性能测试 272
8.8.16 Android应用的启动时间测试 273
8.8.17 机器学习在App启动时间应用案例 273
8.8.18 Android应用的其他测试 276
8.8.19 Android应用的典型问题 276
8.8.20 代码扫描测试 277
8.8.21 云测试平台 277
8.9 Android 常用测试系列工具 278
8.10 CTS测试 280
8.10.1 CTS介绍 280
8.10.2 搭建测试环境 280
8.10.3 CTS运行 281
8.10.4 结果分析 282
8.10.5 CTS Verifier运行 283
8.11 Android开发系列工具 283
8.11.1 adb工具介绍 283
8.11.2 DDMS介绍 284
8.11.3 静态代码扫描工具Findbugs 285
8.11.4 静态代码扫描工具Lint 286
8.11.5 Android的内存泄露工具(MAT) 288
8.11.6 HTTP抓包工具Fiddler 289
8.11.7 App性能检测工具GT 289
第9章 Windows测试 290
9.1 Windows UI自动化测试工具介绍 290
9.2 Windows UI自动化测试技术 290
9.2.1 Windows API技术 290
9.2.2 MSAA技术 291
9.2.3 UI Automation技术 292
9.2.4 基于Reflection反射的UI测试技术 292
9.2.5 自动化常遇到的问题总结 293
9.3 常用工具AutoIt介绍 293
9.3.1 AutoIt介绍 293
9.3.2 Au3Info获取信息工具 295
9.3.3 AutoIt案例说明 296
9.3.4 Aut2exe工具介绍 297
9.4 Coded UI Test 297
9.4.1 Coded UI测试介绍 297
9.4.2 Coded UI Test案例 298
9.5 猴子测试与模糊测试 301
9.5.1 猴子测试 301
9.5.2 模糊Fuzz测试 301
9.6 Windows系列工具 303
第10章 Web测试 304
10.1 测试方法与工具 304
10.1.1 Web功能测试 304
10.1.2 Web链接测试及工具 305
10.1.3 Web兼容性测试及工具介绍 306
10.1.4 W3C测试 307
10.1.5 Web安全性测试 307
10.1.6 Web代码合法性测试 307
10.1.7 Web的UI、UE测试 308
10.1.8 契约测试 308
10.1.9 Web的API接口测试 309
10.2 自动化测试工具Selenium 309
10.2.1 Selenium介绍 309
10.2.2 Selenium IDE 310
10.2.3 Selenese命令 312
10.2.4 Selenium RC介绍与不同语言的使用说明 313
10.2.5 WebDriver介绍与案例 315
10.2.6 定位页面元素与对应脚本说明 316
10.2.7 基于Python的WebDriver案例说明 320
10.2.8 元素等待方法与案例说明 322
10.2.9 Unittest的案例说明 324
10.2.10 HTMLTestRunner的案例说明 325
10.2.11 PageObject页面对象设计模式 327
10.2.12 结合Junit的Java案例说明 327
10.2.13 Selenium Grid的安装与案例说明 330
10.2.14 Jenkins与Selenium的集成 334
10.2.15 验证码的常用处理方式 335
10.2.16 Web自动化使用AutoIt工具 335
10.2.17 Web自动化使用Sikuli工具 335
10.3 Web系列测试工具介绍 336
10.3.1 Browsershots工具 336
10.3.2 HD-Tach工具 337
10.3.3 Firefox 的Firebug 337
10.3.4 Firefox 的FirePath 338
10.3.5 Chrome开发人员工具 339
10.3.6 IE开发人员工具 340
10.3.7 Web性能测试工具介绍 341
第11章 Web性能测试 342
11.1 Web性能测试技术 342
11.1.1 Web性能测试术语 342
11.1.2 Web性能数据的计算方式 344
11.1.3 Web性能结果分析 344
11.2 Web性能测试类型 345
11.3 Web性能测试策略与设计 350
11.3.1 基于风险分析的Web性能测试策略 350
11.3.2 Web测试设计与注意点 351
11.4 Web性能测试工具JMeter 352
11.4.1 JMeter介绍 352
11.4.2 JMeter安装与目录结构 353
11.4.3 运行JMeter 354
11.4.4 JMeter GUI界面介绍 356
11.4.5 JMeter常用组件介绍 357
11.4.6 JMeter的执行顺序 361
11.4.7 JMeter作用域 362
11.4.8 JMeter的参数化测试 362
11.4.9 创建Web测试计划 363
11.4.10 使用JMeter代理录制性能测试脚本 367
11.4.11 使用Badboy录制性能测试脚本 369
11.4.12 使用Chrome插件录制性能测试脚本 371
参考文献 373
推荐语 374
展开全部
作者简介
作者有十余年的一线测试经验,先后参与和主持过不同平台下的驱动测试、应用程序测试、嵌入式OS测试、手机测试、Web测试等。工作覆盖测试策略、测试设计与建模、自动化、测试过程评估、质量管理持续改进等软件工程各方面,在测试架构师、不同领域的自动化与测试管理方面都有丰富的经验。
预估到手价 ×
预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。
确定