当前位置:经管资料网行业分类IT互联网软件测试基础知识509页

软件测试基础知识509页

83.9 MB
中文
150
计点资料
2017
509页
PDF [下载阅读器]
2019-09-08 10:28:39
推荐星级
IT互联网计算机 | 软件开发
行业分类 | IT互联网

软件测试基础知识简介

专门为有志于软件测试的工程师打开软件测试的大门,笔者结合案例讲解测试实践技术,主要内容有:项目管理、项目需求管理、代码质量控制、自动化部署、软件测试、安全测试与安全管理、自动化测试基础、自动化测试框架、性能测试、性能分析、监控平台与故障排查、灾难恢复与容灾测试等。书中使用了大量的原创图表,提供了基础工具的使用方法和流程。

目录
第 1 章 项目管理 1
1.1 项目管理概述 2
1.2 软件项目管理 5
1.3 项目质量管理 10
1.4 项目管理流程 11
1.4.1 项目启动 11
1.4.2 项目计划 13
1.4.3 软件需求阶段 14
1.4.4 变更管理 16
1.4.5 设计阶段 18
1.4.6 构建阶段 19
1.4.7 测试阶段 21
1.4.8 部署与试运行 23
1.4.9 项目总结 25
1.5 项目管理十诫 26
1.6 项目管理工具对比 28
1.6.1 Microsoft Project 28
1.6.2 Redmine 29
1.6.3 Feng Office 30
1.6.4 ProjeQtOr 32
1.6.5 Project-Open 33
1.6.6 各管理工具特性对比 33
1.7 ProjeQtOr 简介 34
1.7.1 部署 ProjeQtOr 34
1.7.2 常用术语 38
1.7.3 系统配置—系统管理员 39
1.7.4 需求管理—产品经理 43
1.7.5 项目管理—项目经理 45
1.7.6 开发管理—开发人员 48
1.7.7 测试管理—测试人员 50
1.8 要点回顾 52
第 2 章 项目需求管理 53
2.1 认识需求 53
2.1.1 需求的基本定义 54
2.1.2 需求类别 54
2.1.3 需求干系人 56
2.2 需求工程 57
2.3 需求开发 57
2.3.1 需求调研 58
2.3.2 需求分析 61
2.3.3 需求定义 64
2.4 需求管理 66
2.4.1 需求确认 66
2.4.2 需求跟踪 67
2.4.3 需求变更管理 68
2.5 需求说明书 69
2.5.1 《业务需求规格说明书》 70
2.5.2 《用户需求规格说明书》 71
2.5.3 《软件需求规格说明书》 72
2.6 测试需求 73
2.7 需求管理工具 74
2.7.1 Rational RequisitePro 75
2.7.2 TelelogicDoors 76
2.8 Plandora 实战 76
2.8.1 搭建 Plandora 77
2.8.2 管理员配置 78
2.8.3 前端用户 82
2.8.4 需求变更实例 88
2.9 要点回顾 92
第 3 章 代码质量控制 93
3.1 静态代码分析 94
3.2 代码文档规范 94
3.2.1 命名规范 95
3.2.2 编码规范 96
3.2.3 注释规范 97
3.2.4 异常处理规范 102
3.2.5 单元测试规范 103
3.2.6 文件解析规范 103
3.3 Sonar 简介 106
3.3.1 Sonar 体系架构 107
3.3.2 Sonar 代码规则 108
3.4 Sonar 服务端 110
3.4.1 环境要求 110
3.4.2 Sonar 服务器搭建 110
3.4.3 Sonar 配置 112
3.4.4 Sonar 插件 114
3.5 Sonar 客户端 116
3.5.1 Sonar-Runner 客户端 116
3.5.2 Maven 插件方式 117
3.5.3 Ant 插件方式 118
3.5.4 Eclipse 插件方式 119
3.6 最佳实践 121
3.6.1 项目配置 122
3.6.2 持续审查 123
3.6.3 结果分析 125
3.6.4 集成曲线图 128
3.7 要点回顾 129
第 4 章 自动化部署 130
4.1 引入自动化部署 131
4.1.1 复杂的手工部署 131
4.1.2 自动化部署方式 132
4.1.3 持续集成思想 133
4.2 自动化部署的特点 134
4.2.1 环境一致性 134
4.2.2 部署系统化 134
4.2.3 配置集中化 135
4.3 版本控制 137
4.3.1 Git 简介 137
4.3.2 Git 部署 138
4.3.3 Git 客户端使用 141
4.3.4 Git 相关操作 144
4.3.5 代码管理 147
4.4 JDeploy 平台 151
4.4.1 认识 JDeploy 151
4.4.2 JDeploy 部署配置 151
4.4.3 一键部署项目 152
4.5 要点回顾 155
第 5 章 软件测试 156
5.1 软件测试 156
5.1.1 软件测试发展史 157
5.1.2 软件测试的未来 160
5.1.3 测试部门组织架构 161
5.1.4 软件测试的基本类型 163
5.2 测试模型 164
5.2.1 瀑布模型 164
5.2.2 敏捷模型 165
5.2.3 敏捷测试与传统测试的区别 166
5.3 系统测试流程 167
5.4 根据需求原型设计测试用例 171
5.4.1 需求原型规范样式 171
5.4.2 设计测试用例 173
5.5 缺陷描述 175
5.5.1 缺陷属性 175
5.5.2 缺陷描述示例 176
5.6 测试的策略 178
5.7 测试过程的经验总结 179
5.8 质量保证 180
5.9 要点回顾 181
第 6 章 安全测试与安全管理 182
6.1 安全测试 182
6.1.1 安全测试概述 183
6.1.2 安全测试的基本过程 184
6.1.3 安全测试与安全运维 186
6.1.4 安全测试工具 186
6.1.5 安全测试用例 187
6.2 开发安全规范 189
6.2.1 跨站脚本安全规范 189
6.2.2 SQL 注入安全规范 191
6.2.3 页面组件和敏感数据的安全规范 193
6.2.4 Java 安全规范 196
6.2.5 应用集成安全规范 197
6.3 代码安全审核工具 Checkmarx 197
6.3.1 SQL 注入 198
6.3.2 反射型跨站脚本攻击 199
6.3.3 储存型 xSS 201

6.3.4 HTTP 响应头分裂(Http_ Response_Splitting) 201

6.4 安全漏洞 202
6.4.1 信息收集 202
6.4.2 口令入侵 204
6.4.3 心脏滴血漏洞 207
6.5 OSSIM 安全管理平台 209
6.5.1 OSSIM 架构 210
6.5.2 安装与部署 211
6.5.3 OSSIM 控制台 211
6.5.4 Web 界面配置 212
6.5.5 OSSIM 使用实战 214
6.6 要点回顾 219
第 7 章 自动化测试基础 220
7.1 自动化基础 221
7.1.1 自动化测试流程 222
7.1.2 自动化测试特点 225
7.1.3 自动化测试工具 226
7.1.4 标记语言介绍 228
7.2 Web 自动化测试 233
7.2.1 元素定位 234
7.2.2 Selenium IDE 238
7.2.3 Selenium 使用 241
7.3 接口自动化测试 247
7.3.1 接口测试类型 248
7.3.2 接口测试工具 249
7.3.3 Mock 测试 250
7.3.4 HTTP 协议测试 254
7.4 TestNG 框架 258
7.4.1 TestNG 配置 258
7.4.2 TestNG 注解 260
7.4.3 测试套件 260
7.4.4 数据驱动 265
7.4.5 执行测试结果 267
7.4.6 测试集成 268
7.5 要点回顾 270
第 8 章 自动化测试框架 271
8.1 框架分析 272
8.1.1 框架设计目标 272
8.1.2 业务流程层次分析 272
8.1.3 业务流程测试自动化 273
8.1.4 手工用例自动化 274
8.2 框架设计 274
8.2.1 框架设计思想 274
8.2.2 框架物理架构 276
8.2.3 框架逻辑架构 277
8.2.4 框架工作流程 278
8.3 框架开发 278
8.3.1 创建测试用例 279
8.3.2 创建测试数据 280
8.3.3 创建测试项目 281
8.3.4 开发框架运行类 285
8.3.5 开发公共接口 288
8.3.6 添加日志报告 292
8.4 脚本开发 292
8.4.1 编写测试脚本 292
8.4.2 调试运行脚本 293
8.4.3 上传脚本 294
8.5 持续集成 296
8.5.1 Jenkins 服务器搭建 296
8.5.2 Jenkins 相关插件 298
8.5.3 部署测试执行机 299
8.5.4 分布式测试 300
8.5.5 配置测试任务 303
8.5.6 查看运行结果 310
8.6 要点回顾 312
第 9 章 性能测试 313
9.1 性能测试基础 313
9.1.1 性能术语 314
9.1.2 需求分析与策略 317
9.2 测试利器之 LoadRunner 321
9.2.1 LoadRunner 安装贴士 321
9.2.2 脚本与优化 322
9.2.3 设置场景 339
9.2.4 运行场景 340
9.2.5 收集和分析结果 341
9.3 测试利器之 JMeter 343
9.3.1 JMeter 介绍 343
9.3.2 JMeter 脚本与优化 344
9.3.3 收集监控数据 353
9.3.4 运行测试 353
9.3.5 JMeter 使用小结 354
9.4 性能测试框架搭建 355
9.4.1 JMeter 配置监听器 355
9.4.2 InfluxDB 数据库配置 356
9.4.3 InfluxDB Graphite Listener 配置 357
9.4.4 查看 InfluxDB 结果 357
9.4.5 Grafana 配置 358
9.5 性能测试实战 359
9.5.1 明确测试需求 359
9.5.2 选取测试方法和策略 361
9.5.3 准备测试脚本 362
9.5.4 执行与分析测试结果 362
9.5.5 提出调优建议 364
9.5.6 交付测试报告 364
9.6 性能调优 364
9.6.1 CPU 使用率过高 364
9.6.2 I/O 使用率过高 365
9.6.3 进程数调整 367
9.6.4 线程不安全 367
9.6.5 数据库连接数过少 368
9.6.6 数据导入慢 369
9.7 要点回顾 369
第 10 章 性能分析 371
10.1 系统硬件资源监控 372
10.1.1 nmon 工具 373
10.1.2 Linux 系统监控命令 378
10.2 JVM 监控与分析 386
10.2.1 JVM 基础 386
10.2.2 JVM 垃圾回收 388
10.2.3 常见 JVM 命令 390
10.2.4 堆分析工具 MAT 402
10.2.5 JConsole 403
10.2.6 JProfiler 406
10.3 数据库性能分析 415
10.3.1 软解析和硬解析 415
10.3.2 SQL 执行计划分析 417
10.3.3 数据库连接数监控 418
10.3.4 Oracle 数据库性能诊断报告 AWR 419
10.4 要点回顾 427
第 11 章 监控平台与故障排查 428
11.1 监控系统 428
11.1.1日志监控平台 429
11.1.2 硬件和应用监控平台 429
11.2 Zabbix 简介 430
11.2.1 系统架构 430
11.2.2 配置 Zabbix 432
11.2.3 常见的配置问题 436
11.2.4 监控主机 438
11.3 美化界面 Grafana 441
11.3.1 部署 Grafana 441
11.3.2 使用 Grafana 442
11.4 服务器故障排查 447
11.4.1 清楚故障的前因后果 447
11.4.2 搜寻蛛丝马迹 447
11.4.3 列出当前运行的进程 449
11.4.4 监听网络服务 451
11.4.5 查看硬件状态 451
11.4.6 列出挂载点和文件系统 457
11.4.7 过滤内核和中断信息 459
11.4.8 定时任务 460
11.4.9 分析系统日志 461
11.5 要点回顾 461
第 12 章 灾难恢复与容灾测试 462
12.1 灾难恢复 463
12.1.1 灾难恢复的规范 463
12.1.2 灾难恢复能力等级 466
12.1.3 灾难恢复的关键指标 468
12.2 容灾测试 471
12.2.1 容灾的起源 471
12.2.2 容灾的定义 472
12.2.3 容灾的区别 474
12.3 详解容灾测试 475
12.3.1 容灾测试的目标 475
12.3.2 职责的划分 476
12.3.3 容灾测试的流程 477
12.4 容灾测试实战 478
12.4.1 容灾测试计划 479
12.4.2 容灾用例与 Bug 480
12.4.3 容灾线上演习 484
12.4.4 容灾长期规划 485

全部