书籍详情
全栈软件测试工程师宝典
作者:顾翔 著
出版社:清华大学出版社
出版时间:2020-09-01
ISBN:9787302555254
定价:¥168.00
购买这本书可以去
内容简介
本书是是《软件测试技术实战 设计、工具及管理》一书的姊妹书,是一本全面介绍全面软件测试的书籍。分为上下两篇,上篇为技术篇(第1章——第5章),主要介绍软件测试技术;下篇为工具篇(第6章——第12章),主要介绍软件测试工具。通过对本书的阅读可以使您尽快从一位软件菜鸟变为测试领域的达人,当然这里需要您的努力和天赋。另外阅读此书后,您对于软件测试工作不会变得枯燥,让您可以在工作中享受逮BUG的乐趣。本书适合于有3年以上经验的软件测试从业人员,也适合于在校的本科生和研究生作为参考资料。
作者简介
顾翔,CCF会员,《软件测试技术实战-设计、工具及管理(第一版)》《基于Django的电子商务网站设计》作者。安卓绿色联盟2018年最受欢迎的讲师获得者。bugreport2script开源项目作者。
目录
目录
上篇技术篇
第1章软件测试的基本知识/3
1.1软件测试的定义/3
1.2软件测试术语/3
1.2.1场景测试法/4
1.2.2探索式测试/5
1.2.3快速测试/7
1.2.4基于模型的测试/8
1.2.5语境驱动学派/8
1.2.6肥皂剧测试/9
1.2.7DevOps/9
1.3软件工程模型/9
1.3.1瀑布模型及其衍生模型/10
1.3.2敏捷软件开发/11
1.4软件测试模型/12
1.4.1V模型/12
1.4.2W模型/13
1.4.3X模型/13
1.4.4敏捷测试模型/14
1.5软件测试方法/14
1.6软件测试步骤/16
1.7软件分析方法/16
1.7.16W2H法则/16
1.7.2CPIE模型/17
1.7.3SBTM/18
1.7.4HTSM/18
1.7.5ACC模型/20
1.8软件测试设计方法/21目录1.8.1基于传统的测试设计方法/21
1.8.2基于质量的测试设计方法/21
1.8.3基于经验的测试设计方法/21
1.9项目的质量三角形/21
1.10本章总结/22
1.10.1介绍内容/22
1.10.2案例/23
第2章软件测试分析与设计/24
2.1软件测试分析与设计重要性分析/24
2.2做好软件测试分析与设计工作需要的能力/25
2.2.1思维能力/25
2.2.2学习能力/28
2.2.3其他能力/31
2.3如何做好软件测试分析与设计/33
2.3.1探索式测试/33
2.3.2头脑风暴/33
2.3.3阅读测试用例与缺陷报告/33
2.3.4学好IT知识/33
2.3.5锻炼思维的游戏/34
2.4如何处理时间短、任务重的情形/34
2.5软件测试分析与设计的最高境界/34
2.6本章总结/35
介绍内容/35
第3章软件性能测试/36
3.1性能测试介绍/36
3.1.1性能测试的定义/36
3.1.2由于性能测试没做到位而发生的缺陷/36
3.1.3性能测试类型/37
3.1.4性能测试指标/40
3.1.5性能测试环境/46
3.1.6观察性能的4个维度/47
3.1.7性能测试的判断标准/49
3.1.8性能测试的场景/49
3.1.9性能测试的干系人/49
3.1.10负载测试的二分法找拐点的方法/50
3.1.11全链路压测/51
3.2性能监控/52
3.2.1Windows的性能监控/52
3.2.2Linux的性能监控/55
3.2.3Tomcat的性能监控/96
3.2.4MySQL监控/96
3.2.5JVM性能监控/97
3.2.6APM工具简介/102
3.3性能调优/103
3.3.1分析方法/103
3.3.2前端优化/104
3.3.3程序优化/104
3.3.4配置优化/104
3.3.5数据库优化/104
3.3.6结构优化/105
3.3.7JVM调优/111
3.4本章总结/113
3.4.1介绍内容/113
3.4.2案例/115
第4章软件安全测试/116
4.1软件安全知识概要/116
4.1.1软件安全分类/116
4.1.2软件的安全性与便捷性/116
4.1.3白帽子黑客和黑帽子黑客/116
4.1.4白帽子兵法/117
4.1.5软件安全三要素/119
4.1.6Web软件安全威胁OWASP Top 10/119
4.1.7同源策略/119
4.1.8HTTP简介/120
4.2软件安全测试/122
4.2.1XSS注入/122
4.2.2CSRF注入/139
4.2.3点击劫持/142
4.2.4HTML5的安全/146
4.2.5SQL注入/156
4.2.6其他代码注入/171
4.2.7HTTP参数污染/176
4.2.8信息侦探/179
4.2.9文件上传漏洞/181
4.2.10命令行漏洞/183
4.2.11XXE漏洞/187
4.2.12文件包含漏洞/191
4.2.13逻辑漏洞/195
4.2.14加密与认证/198
4.2.15DDoS攻击/213
4.2.16钓鱼和网页跳转/215
4.2.17ARP欺骗/217
4.2.18安全响应头信息/218
4.2.19其他高级技术/219
4.3App安全测试概要/220
4.3.1逆向工程反编译测试/220
4.3.2键盘劫持/221
4.3.3信息泄露/223
4.4安全测试流程/224
4.4.1需求阶段/224
4.4.2设计阶段/225
4.4.3开发阶段/227
4.4.4测试阶段/228
4.5本章总结/228
4.5.1介绍内容/228
4.5.2案例/231
第5章最新软件测试技术/232
5.1精准测试/232
5.1.1错误代码的跟踪/232
5.1.2回归用例的选取/232
5.1.3测试人员的绩效考核/233
5.2蜕变测试/233
5.3基于微服务的契约测试/234
5.4通过大数据分析软件测试日志/234
5.5AI测试/234
5.6本章总结/235
5.6.1介绍内容/235
5.6.2案例/235
下篇工具篇
第6章第6章软件测试工具与自动化测试/239
6.1软件测试工具与自动化测试介绍/239
6.1.1普通软件测试工具/239
6.1.2App移动端测试工具/240
6.1.3接口测试工具/240
6.1.4软件自动化测试框架/240
6.1.5软件测试工具的类型/241
6.2软件自动化测试基础知识/243
6.2.1软件自动化测试方法及实践/243
6.2.2自动化测试工具的分类和选择/254
6.2.3自动化测试数据的准备/255
6.3JDK和Python环境安装/257
6.3.1JDK环境安装/257
6.3.2Python环境安装/258
6.4本章总结/258
6.4.1介绍内容/258
6.4.2案例/259
第7章第7章单元测试框架/260
7.1Java单元测试框架JUnit 4 /260
7.1.1JUnit 4环境的配置/260
7.1.2JUnit 4测试用例的运行和调试/263
7.1.3对基本代码的详细介绍/266
7.1.4对JUnit 4的高级操作/267
7.1.5断言/271
7.1.6使用Ant来运行JUnit/272
7.1.7使用Java脚本发送测试报告/274
7.2Java单元测试框架TestNG/280
7.2.1在Eclipse中安装TestNG/280
7.2.2Maven安装以及在Eclipse中的配置/281
7.2.3建立基于Maven的单元测试项目/284
7.2.4TestNG的装饰器/288
7.3Python单元测试框架unittest/289
7.3.1unittest概述/289
7.3.2unittest的测试覆盖率分析/293
7.3.3unittest的断言/295
7.3.4unittest批量运行及报告产生/296
7.3.5使用Python脚本发送测试报告/297
7.4Python单元测试框架Pytest/298
7.4.1Pytest概述/298
7.4.2Pytest装饰器/302
7.4.3Pytest 常用命令行选项/303
7.4.4Pytest 运行并发测试/304
7.4.5配合allure生成Pytest 测试报告/305
7.4.6参数化/310
7.4.7用Pytest最终实现简易计算器测试用例/313
7.5本章总结/316
7.5.1介绍内容/316
7.5.2案例/317
第8章性能测试工具/318
8.1LoadRunner工具介绍/318
8.1.1LoadRunner简介/318
8.1.2LoadRunner 12性能测试工具架构/318
8.1.3LoadRunner 12 测试HTTP基本功能使用技巧/319
8.1.4用LoadRunner 12实现App压力测试/366
8.1.5案例分析/370
8.2JMeter工具介绍/374
8.2.1JMeter安装/374
8.2.2JMeter基本结构介绍/375
8.2.3JMeter的录制/376
8.2.4JMeter主要组件介绍/378
8.2.5案例分析/396
8.3Locust工具介绍/403
8.3.1设置/404
8.3.2书写代码及运行/404
8.4性能分析监控工具/407
8.4.1Linux性能监控工具nmon/407
8.4.2Tomcat监控工具Probe/409
8.5本章总结/411
8.5.1介绍内容/411
8.5.2案例/413
第9章软件功能测试工具/414
9.1UiAutomator工具介绍/414
9.1.1使用UiAutomator工具的优点/415
9.1.2下载和配置/415
9.1.3配置开发测试代码/416
9.1.4建立虚拟设备/419
9.1.5UiAutomator API详解/421
9.1.6案例分析/460
9.2Selenium 3.x介绍/464
9.2.1Selenium历史演变/464
9.2.2环境安装/465
9.2.3Selenium 3.x对浏览器的支持/469
9.2.4API介绍/470
9.2.5测试程序的优化/496
9.2.6批量运行/508
9.3Appium工具介绍/510
9.3.1系统安装/510
9.3.2运行第一个Appium测试程序/511
9.3.3Appium Server Capabilities/512
9.3.4API介绍/515
9.3.5案例分析/530
9.3.6BDD技术概要/532
9.4Espresso工具介绍/541
9.4.1环境的搭建/541
9.4.2API介绍/546
9.4.3案例分析/548
9.5基于Python的requests类的接口测试/549
9.5.1接口测试的初始阶段/549
9.5.2测试带有CSRF Token防护的接口/552
9.5.3利用Excel封装数据,基于数据驱动的接口自动化测试/553
9.5.4通过测试数据优化接口测试代码/554
9.5.5相对复杂的接口测试/561
9.5.6用Pytest框架来实现requests类的测试自动化/566
9.6其他自动化接口测试工具/572
9.6.1Postman/572
9.6.2HttpRunner/575
9.7本章总结/577
9.7.1介绍内容/577
9.7.2案例/579
第10章Jenkins的使用/583
10.1CI/CD/583
10.2安装/584
10.3初始化配置/586
10.4建立任务/588
10.4.1General/589
10.4.2源码管理/589
10.4.3构建触发器/591
10.4.4构建环境/591
10.4.5构建/591
10.4.6构建后操作/593
10.5运行/595
10.5.1自动构建/595
10.5.2构建结果说明/595
10.6本章总结/596
10.6.1介绍内容/596
10.6.2案例/597
第11章软件安全测试工具/598
11.1安全扫描工具/598
11.1.1Burp Suite/598
11.1.2AWVS/609
11.1.3AppScan/612
11.2专业测试工具/619
11.2.1CSRFTester/619
11.2.2SQL Map/620
11.2.3Pangolin/628
11.3信息侦探工具/629
11.3.1nmap/629
11.3.2DirBuster/634
11.4App反向编译工具/635
11.4.1Dex2jar、ProGuard和jdgui/635
11.4.2apktool/638
11.5本章总结/639
11.5.1介绍内容/639
11.5.2案例/640
第12章精准测试及其工具/641
12.1星云测试工具部署说明/641
12.1.1系统配置要求/641
12.1.2星云压缩包中的文件/641
12.1.3星云测试工具部署与启动/642
12.2星云工具插装编译说明/654
12.2.1星云测试脚本插装编译说明/654
12.2.2在Eclipse工具插装编译及打包Java项目/656
12.2.3在Tomcat中配置agent服务/658
12.2.4区分用户测试(设置用户标识)/658
12.2.5星云客户端示波器操作说明/659
12.3星云客户端功能说明/662
12.3.1函数列表功能说明/663
12.3.2函数调用图/666
12.3.3控制流程图/669
12.3.4简易控制流程图/670
12.3.5星云客户端测试台功能说明/671
12.3.6Bug与崩溃代码捕获/673
12.3.7多版本与累计覆盖率/675
12.4星云客户端企业项功能说明/677
12.4.1智能的回归测试用例选取分析算法/677
12.4.2测试用例的聚类分析算法/679
12.4.3缺陷定位算法/681
12.4.4最小测试用例集/681
12.4.5下载报表/682
12.5星云工具云报表平台说明/683
12.5.1登录Web平台/683
12.5.2项目信息/683
12.5.3测试用例——测试用例列表/684
12.5.4测试缺陷——Bug信息汇总/686
12.5.5覆盖率列表/688
12.5.6复杂度统计信息/689
12.5.7复杂度列表/690
12.6本章总结/691
介绍内容/691
附录A电子商务系统/693
A.1用户信息模块/693
A.2商品信息模块/693
A.3购物车模块/694
A.4送货地址模块/694
A.5订单模块/694
A.6订单支付模块/695
A.7数据库结构/695
参考文献/696
上篇技术篇
第1章软件测试的基本知识/3
1.1软件测试的定义/3
1.2软件测试术语/3
1.2.1场景测试法/4
1.2.2探索式测试/5
1.2.3快速测试/7
1.2.4基于模型的测试/8
1.2.5语境驱动学派/8
1.2.6肥皂剧测试/9
1.2.7DevOps/9
1.3软件工程模型/9
1.3.1瀑布模型及其衍生模型/10
1.3.2敏捷软件开发/11
1.4软件测试模型/12
1.4.1V模型/12
1.4.2W模型/13
1.4.3X模型/13
1.4.4敏捷测试模型/14
1.5软件测试方法/14
1.6软件测试步骤/16
1.7软件分析方法/16
1.7.16W2H法则/16
1.7.2CPIE模型/17
1.7.3SBTM/18
1.7.4HTSM/18
1.7.5ACC模型/20
1.8软件测试设计方法/21目录1.8.1基于传统的测试设计方法/21
1.8.2基于质量的测试设计方法/21
1.8.3基于经验的测试设计方法/21
1.9项目的质量三角形/21
1.10本章总结/22
1.10.1介绍内容/22
1.10.2案例/23
第2章软件测试分析与设计/24
2.1软件测试分析与设计重要性分析/24
2.2做好软件测试分析与设计工作需要的能力/25
2.2.1思维能力/25
2.2.2学习能力/28
2.2.3其他能力/31
2.3如何做好软件测试分析与设计/33
2.3.1探索式测试/33
2.3.2头脑风暴/33
2.3.3阅读测试用例与缺陷报告/33
2.3.4学好IT知识/33
2.3.5锻炼思维的游戏/34
2.4如何处理时间短、任务重的情形/34
2.5软件测试分析与设计的最高境界/34
2.6本章总结/35
介绍内容/35
第3章软件性能测试/36
3.1性能测试介绍/36
3.1.1性能测试的定义/36
3.1.2由于性能测试没做到位而发生的缺陷/36
3.1.3性能测试类型/37
3.1.4性能测试指标/40
3.1.5性能测试环境/46
3.1.6观察性能的4个维度/47
3.1.7性能测试的判断标准/49
3.1.8性能测试的场景/49
3.1.9性能测试的干系人/49
3.1.10负载测试的二分法找拐点的方法/50
3.1.11全链路压测/51
3.2性能监控/52
3.2.1Windows的性能监控/52
3.2.2Linux的性能监控/55
3.2.3Tomcat的性能监控/96
3.2.4MySQL监控/96
3.2.5JVM性能监控/97
3.2.6APM工具简介/102
3.3性能调优/103
3.3.1分析方法/103
3.3.2前端优化/104
3.3.3程序优化/104
3.3.4配置优化/104
3.3.5数据库优化/104
3.3.6结构优化/105
3.3.7JVM调优/111
3.4本章总结/113
3.4.1介绍内容/113
3.4.2案例/115
第4章软件安全测试/116
4.1软件安全知识概要/116
4.1.1软件安全分类/116
4.1.2软件的安全性与便捷性/116
4.1.3白帽子黑客和黑帽子黑客/116
4.1.4白帽子兵法/117
4.1.5软件安全三要素/119
4.1.6Web软件安全威胁OWASP Top 10/119
4.1.7同源策略/119
4.1.8HTTP简介/120
4.2软件安全测试/122
4.2.1XSS注入/122
4.2.2CSRF注入/139
4.2.3点击劫持/142
4.2.4HTML5的安全/146
4.2.5SQL注入/156
4.2.6其他代码注入/171
4.2.7HTTP参数污染/176
4.2.8信息侦探/179
4.2.9文件上传漏洞/181
4.2.10命令行漏洞/183
4.2.11XXE漏洞/187
4.2.12文件包含漏洞/191
4.2.13逻辑漏洞/195
4.2.14加密与认证/198
4.2.15DDoS攻击/213
4.2.16钓鱼和网页跳转/215
4.2.17ARP欺骗/217
4.2.18安全响应头信息/218
4.2.19其他高级技术/219
4.3App安全测试概要/220
4.3.1逆向工程反编译测试/220
4.3.2键盘劫持/221
4.3.3信息泄露/223
4.4安全测试流程/224
4.4.1需求阶段/224
4.4.2设计阶段/225
4.4.3开发阶段/227
4.4.4测试阶段/228
4.5本章总结/228
4.5.1介绍内容/228
4.5.2案例/231
第5章最新软件测试技术/232
5.1精准测试/232
5.1.1错误代码的跟踪/232
5.1.2回归用例的选取/232
5.1.3测试人员的绩效考核/233
5.2蜕变测试/233
5.3基于微服务的契约测试/234
5.4通过大数据分析软件测试日志/234
5.5AI测试/234
5.6本章总结/235
5.6.1介绍内容/235
5.6.2案例/235
下篇工具篇
第6章第6章软件测试工具与自动化测试/239
6.1软件测试工具与自动化测试介绍/239
6.1.1普通软件测试工具/239
6.1.2App移动端测试工具/240
6.1.3接口测试工具/240
6.1.4软件自动化测试框架/240
6.1.5软件测试工具的类型/241
6.2软件自动化测试基础知识/243
6.2.1软件自动化测试方法及实践/243
6.2.2自动化测试工具的分类和选择/254
6.2.3自动化测试数据的准备/255
6.3JDK和Python环境安装/257
6.3.1JDK环境安装/257
6.3.2Python环境安装/258
6.4本章总结/258
6.4.1介绍内容/258
6.4.2案例/259
第7章第7章单元测试框架/260
7.1Java单元测试框架JUnit 4 /260
7.1.1JUnit 4环境的配置/260
7.1.2JUnit 4测试用例的运行和调试/263
7.1.3对基本代码的详细介绍/266
7.1.4对JUnit 4的高级操作/267
7.1.5断言/271
7.1.6使用Ant来运行JUnit/272
7.1.7使用Java脚本发送测试报告/274
7.2Java单元测试框架TestNG/280
7.2.1在Eclipse中安装TestNG/280
7.2.2Maven安装以及在Eclipse中的配置/281
7.2.3建立基于Maven的单元测试项目/284
7.2.4TestNG的装饰器/288
7.3Python单元测试框架unittest/289
7.3.1unittest概述/289
7.3.2unittest的测试覆盖率分析/293
7.3.3unittest的断言/295
7.3.4unittest批量运行及报告产生/296
7.3.5使用Python脚本发送测试报告/297
7.4Python单元测试框架Pytest/298
7.4.1Pytest概述/298
7.4.2Pytest装饰器/302
7.4.3Pytest 常用命令行选项/303
7.4.4Pytest 运行并发测试/304
7.4.5配合allure生成Pytest 测试报告/305
7.4.6参数化/310
7.4.7用Pytest最终实现简易计算器测试用例/313
7.5本章总结/316
7.5.1介绍内容/316
7.5.2案例/317
第8章性能测试工具/318
8.1LoadRunner工具介绍/318
8.1.1LoadRunner简介/318
8.1.2LoadRunner 12性能测试工具架构/318
8.1.3LoadRunner 12 测试HTTP基本功能使用技巧/319
8.1.4用LoadRunner 12实现App压力测试/366
8.1.5案例分析/370
8.2JMeter工具介绍/374
8.2.1JMeter安装/374
8.2.2JMeter基本结构介绍/375
8.2.3JMeter的录制/376
8.2.4JMeter主要组件介绍/378
8.2.5案例分析/396
8.3Locust工具介绍/403
8.3.1设置/404
8.3.2书写代码及运行/404
8.4性能分析监控工具/407
8.4.1Linux性能监控工具nmon/407
8.4.2Tomcat监控工具Probe/409
8.5本章总结/411
8.5.1介绍内容/411
8.5.2案例/413
第9章软件功能测试工具/414
9.1UiAutomator工具介绍/414
9.1.1使用UiAutomator工具的优点/415
9.1.2下载和配置/415
9.1.3配置开发测试代码/416
9.1.4建立虚拟设备/419
9.1.5UiAutomator API详解/421
9.1.6案例分析/460
9.2Selenium 3.x介绍/464
9.2.1Selenium历史演变/464
9.2.2环境安装/465
9.2.3Selenium 3.x对浏览器的支持/469
9.2.4API介绍/470
9.2.5测试程序的优化/496
9.2.6批量运行/508
9.3Appium工具介绍/510
9.3.1系统安装/510
9.3.2运行第一个Appium测试程序/511
9.3.3Appium Server Capabilities/512
9.3.4API介绍/515
9.3.5案例分析/530
9.3.6BDD技术概要/532
9.4Espresso工具介绍/541
9.4.1环境的搭建/541
9.4.2API介绍/546
9.4.3案例分析/548
9.5基于Python的requests类的接口测试/549
9.5.1接口测试的初始阶段/549
9.5.2测试带有CSRF Token防护的接口/552
9.5.3利用Excel封装数据,基于数据驱动的接口自动化测试/553
9.5.4通过测试数据优化接口测试代码/554
9.5.5相对复杂的接口测试/561
9.5.6用Pytest框架来实现requests类的测试自动化/566
9.6其他自动化接口测试工具/572
9.6.1Postman/572
9.6.2HttpRunner/575
9.7本章总结/577
9.7.1介绍内容/577
9.7.2案例/579
第10章Jenkins的使用/583
10.1CI/CD/583
10.2安装/584
10.3初始化配置/586
10.4建立任务/588
10.4.1General/589
10.4.2源码管理/589
10.4.3构建触发器/591
10.4.4构建环境/591
10.4.5构建/591
10.4.6构建后操作/593
10.5运行/595
10.5.1自动构建/595
10.5.2构建结果说明/595
10.6本章总结/596
10.6.1介绍内容/596
10.6.2案例/597
第11章软件安全测试工具/598
11.1安全扫描工具/598
11.1.1Burp Suite/598
11.1.2AWVS/609
11.1.3AppScan/612
11.2专业测试工具/619
11.2.1CSRFTester/619
11.2.2SQL Map/620
11.2.3Pangolin/628
11.3信息侦探工具/629
11.3.1nmap/629
11.3.2DirBuster/634
11.4App反向编译工具/635
11.4.1Dex2jar、ProGuard和jdgui/635
11.4.2apktool/638
11.5本章总结/639
11.5.1介绍内容/639
11.5.2案例/640
第12章精准测试及其工具/641
12.1星云测试工具部署说明/641
12.1.1系统配置要求/641
12.1.2星云压缩包中的文件/641
12.1.3星云测试工具部署与启动/642
12.2星云工具插装编译说明/654
12.2.1星云测试脚本插装编译说明/654
12.2.2在Eclipse工具插装编译及打包Java项目/656
12.2.3在Tomcat中配置agent服务/658
12.2.4区分用户测试(设置用户标识)/658
12.2.5星云客户端示波器操作说明/659
12.3星云客户端功能说明/662
12.3.1函数列表功能说明/663
12.3.2函数调用图/666
12.3.3控制流程图/669
12.3.4简易控制流程图/670
12.3.5星云客户端测试台功能说明/671
12.3.6Bug与崩溃代码捕获/673
12.3.7多版本与累计覆盖率/675
12.4星云客户端企业项功能说明/677
12.4.1智能的回归测试用例选取分析算法/677
12.4.2测试用例的聚类分析算法/679
12.4.3缺陷定位算法/681
12.4.4最小测试用例集/681
12.4.5下载报表/682
12.5星云工具云报表平台说明/683
12.5.1登录Web平台/683
12.5.2项目信息/683
12.5.3测试用例——测试用例列表/684
12.5.4测试缺陷——Bug信息汇总/686
12.5.5覆盖率列表/688
12.5.6复杂度统计信息/689
12.5.7复杂度列表/690
12.6本章总结/691
介绍内容/691
附录A电子商务系统/693
A.1用户信息模块/693
A.2商品信息模块/693
A.3购物车模块/694
A.4送货地址模块/694
A.5订单模块/694
A.6订单支付模块/695
A.7数据库结构/695
参考文献/696
猜您喜欢