《软件测试工程师成长之路 掌握软件测试九大技术主题》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:王顺,盛安平,恽菊花,崔贤编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121239960
  • 页数:413 页
图书介绍:本书以实际项目为原型、以关键理论与丰富实践为指导,贯彻了先进的项目管理理念与全程质量管理思想。本书前9章为软件测试九大技术主题分享,是众多资深软件工程师在软件测试领域的经验总结、知识升华与提高,展现众多实际工作中典型的测试技巧和测试技术。本书第10章是引导读者自己动手实践,在实践中不断总结与提高。本书第11章、第12章、第13章讲解HTML、JavaScript、CSS,通过网页编程语言帮助读者理解为什么会出现这样的测试,为什么要选择这些特定的字符串进行测试。

第1章 Web测试专题技术分享 1

1.1 Web测试的特点 1

1.2 Web测试基础点 2

1.2.1 获取软件版本号 2

1.2.2 修改浏览器的代理设置 4

1.2.3 修改hosts配置文件 6

1.2.4 测试网上付费购物 7

1.2.5 截图软件FS Capture的使用 8

1.2.6 截图软件Jing的使用 10

1.3 用户界面测试 12

1.3.1 文字或图片重叠 12

1.3.2 文字或图片剪裁 13

1.3.3 文字或图片没对齐 14

1.3.4 重复菜单项或链接 15

1.3.5 提示信息错误 15

1.3.6 界面测试其他问题 16

1.4 功能测试 18

1.4.1 Tooltip不显示 18

1.4.2 JS错误问题 19

1.4.3 页面链接错误 20

1.4.4 页面访问资源不可用 21

1.4.5 出现“404页面错误” 22

1.4.6 按钮不工作 23

1.4.7 功能未实现 24

1.4.8 错误信息提示不合理 25

1.4.9 数据库访问错误 26

1.4.10 文档无法下载 27

1.5 表单测试 28

1.5.1 文本框测试常见验证点 28

1.5.2 特殊输入域测试常见验证点 29

1.5.3 单选按钮测试常见验证点 31

1.5.4 复选框测试常见验证点 32

1.5.5 大块文字区域测试常见验证点 32

1.5.6 下拉列表框测试常见验证点 33

1.5.7 排序测试常见验证点 33

1.5.8 分页测试常见验证点 33

1.5.9 搜索框填充域测试常见验证点 34

1.5.10 用户登录测试常见验证点 35

1.5.11 特殊字符处理常见验证点 35

1.5.12 转义字符处理常见验证点 37

1.5.13 多次快速提交问题 37

1.5.14 共用页面Session问题 37

1.5.15 页面刷新问题 38

1.5.16 浏览器前进/后退按钮问题 38

第2章 Client测试专题技术分享 39

2.1 Client测试的特点 39

2.2 如何进行Client测试 40

2.2.1 安装测试 40

2.2.2 卸载测试 42

2.2.3 UI测试 43

2.2.4 功能测试 45

2.2.5 字符输入测试 47

2.2.6 Tooltip测试 48

2.2.7 链接测试 49

2.2.8 操作按钮测试 50

2.2.9 菜单测试 51

2.2.10 音频测试 51

2.2.11 视频测试 53

2.2.12 程序运行权限测试 54

2.3 如何获取测试需要的Trace 55

第3章 Mobile测试专题技术分享 57

3.1 Mobile特点 57

3.2 Mobile测试基础 58

3.2.1 手机测试常见类型 58

3.2.2 手机测试与传统测试的区别 59

3.2.3 监控手机流量 60

3.2.4 获取手机的Root权限 60

3.3 实现手机与计算机的联系 61

3.3.1 “豌豆荚”的基本操作 62

3.3.2 “360手机助手”的基本操作 62

3.3.3 “腾讯手机管家”的基本操作 63

3.3.4 实现iPhone/iPad/iPad Mini与计算机的联系 63

3.3.5 备份手机中的数据 64

3.3.6 截取手机屏幕内容 65

3.3.7 记录手机的Error Log 66

3.3.8 手机数据信息 68

3.4 手机设备的自身测试 68

3.5 手机应用软件测试 72

3.6 手机Web应用测试 73

3.7 手机测试问题集锦 73

第4章 国际化、本地化软件测试专题技术分享 77

4.1 软件国际化 77

4.1.1 国际化概述 78

4.1.2 软件国际化误区 78

4.2 软件本地化 80

4.2.1 软件本地化概述 80

4.2.2 软件本地化误区 81

4.3 国际化软件测试 82

4.3.1 在本地化机器上安装使用程序 82

4.3.2 正确的字符集编码 83

4.3.3 伪本地化测试发现文本扩展问题 85

4.3.4 测试区域文化和传统特征 87

4.3.5 保证文本与代码分离 87

4.4 本地化软件测试 89

4.4.1 翻译问题 89

4.4.2 数据格式问题 90

4.4.3 快捷键问题 91

4.4.4 本地化后的排序问题 92

4.4.5 常用本地化测试技巧 93

第5章 跨平台跨浏览器专题技术分享 95

5.1 跨平台测试特点 96

5.2 软件平台的分类 96

5.2.1 Windows平台 97

5.2.2 Mac OS X平台 97

5.2.3 Linux平台 98

5.2.4 Solaris平台 98

5.2.5 HP-UX平台 98

5.2.6 IBM-AIX平台 98

5.3 跨平台测试需要具备的知识 99

5.3.1 Windows平台 99

5.3.2 Mac OSX平台 103

5.3.3 UNIX平台 107

5.4 跨平台测试技术分享 111

5.4.1 安装应用程序 112

5.4.2 应用程序运行 114

5.4.3 程序运行界面测试 115

5.4.4 程序功能测试 116

5.5 浏览器的分类 118

5.5.1 IE 118

5.5.2 Firefox 119

5.5.3 Chrome 119

5.5.4 Safari 120

5.6 跨浏览器测试技术分享 120

第6章 Web安全测试专题技术分享 123

6.1 Web安全测试 123

6.1.1 Web前端工具Firebug的使用 124

6.1.2 Web前端工具Fiddler的使用 125

6.1.3 2010年Web应用十大安全攻击 127

6.1.4 2010年与2007年Web应用十大安全攻击对比 129

6.2 未验证的重定向和转发 129

6.2.1 攻击说明 129

6.2.2 攻击举例 130

6.2.3 开发人员防范方法 131

6.3 传输层保护不足 131

6.3.1 攻击说明 131

6.3.2 攻击举例 131

6.3.3 开发人员防范方法 131

6.4 URL访问控制不当 132

6.4.1 攻击说明 132

6.4.2 攻击举例 132

6.4.3 开发人员的防范方法 132

6.5 不安全的加密存储 133

6.5.1 攻击说明 133

6.5.2 攻击举例 133

6.5.3 开发人员防范方法 133

6.6 安全配置错误 134

6.6.1 攻击说明 134

6.6.2 攻击举例 134

6.6.3 开发人员防范方法 134

6.7 CSRF 135

6.7.1 攻击说明 135

6.7.2 攻击举例 135

6.7.3 开发人员防范方法 136

6.8 不安全的直接对象引用 136

6.8.1 攻击说明 136

6.8.2 攻击举例 137

6.8.3 开发人员防范方法 137

6.9 失效的身份认证和会话管理 137

6.9.1 攻击说明 137

6.9.2 攻击举例 137

6.9.3 开发人员防范方法 138

6.10 跨站脚本 138

6.10.1 攻击说明 138

6.10.2 攻击举例 139

6.10.3 开发人员防范方法 140

6.11 SQL注入 141

6.11.1 攻击说明 141

6.11.2 攻击举例 141

6.11.3 开发人员防范方法 143

6.12 OWASP 143

6.12.1 OWASP定义 143

6.12.2 OWASP上最新的Web安全攻击与防范技术 143

6.12.3 WiKi上最新的Web安全攻击与防范技术 145

第7章 敏捷项目测试专题技术分享 146

7.1 敏捷软件开发简介 147

7.1.1 敏捷开发的流程 147

7.1.2 敏捷开发的质量管理 148

7.1.3 敏捷开发中的关键概念 149

7.2 敏捷测试的定义 152

7.3 敏捷测试的实质 152

7.4 敏捷测试与普通测试的区别 153

7.5 敏捷项目测试实例介绍 154

7.5.1 实例项目介绍 154

7.5.2 用户故事设计和发布计划阶段 156

7.5.3 Sprint阶段 158

7.5.4 Sprint结束和下一个Sprint开始 162

第8章 软件自动化测试专题技术分享 165

8.1 引入自动化测试 165

8.2 什么是自动化测试 171

8.2.1 自动化测试是怎样工作的 172

8.2.2 自动化测试有哪些类别 174

8.2.3 设计一个常见的自动化测试框架 175

8.3 持续集成自动化测试 177

8.4 自动化测试工具——JMeter 178

8.4.1 JMeter是什么 178

8.4.2 JMeter的安装和运行 178

8.4.3 JMeter自动化脚本设计策略 181

8.4.4 抓取一个简单的请求 182

8.4.5 设置配置文件 186

8.5 设计一个简单的脚本 196

8.5.1 添加学生——HTTP Request 196

8.5.2 查看运行结果——View ResultsTree 200

8.5.3 访问数据库——JDBC Request 202

8.5.4 验证测试结果——Response Assertion 204

8.5.5 清理数据 206

第9章 压力与性能测试专题技术分享 209

9.1 什么是压力、性能测试 209

9.2 压力测试和性能测试用例设计 211

9.3 压力测试和性能测试——JMeter 214

9.3.1 单线程添加多个学生 215

9.3.2 多线程添加多个学生 221

9.4 生成测试报告 225

9.4.1 生成测试报告的方法 225

9.4.2 分析测试报告 226

第10章 自己动手完成软件测试实践 232

10.1 中心在线网站测试实践 232

10.2 国内知名网站或应用测试实践 234

10.3 如何设计测试案例 235

10.3.1 看清项目测试范围(Test Scope) 236

10.3.2 编写测试案例 237

10.4 准确汇报BUG的技巧 243

10.4.1 准确汇报BUG的几条基本准则 243

10.4.2 描述BUG中需要注意的事项 244

10.4.3 在汇报英文BUG时用专业英文描述 244

10.4.4 与外国人进行项目交流时的常用英语 246

10.5 寻找软件产品缺陷获奖作品欣赏 248

10.5.1 全国大学生寻找产品缺陷(Find BUG)技能大赛说明 248

10.5.2 汇报产品缺陷模板 250

10.5.3 参赛选手提交的作品内容 250

10.5.4 大赛组委会审阅评价 260

第11章 网页编程语言HTML 261

11.1 HTML编辑工具 262

11.2 读者如何参与实践 263

11.3 HTML语法教学 265

11.3.1 网页架构标记 265

11.3.2 排版标记 268

11.3.3 字体标记 271

11.3.4 清单标记 274

11.3.5 表格标记 277

11.3.6 图形标记 281

11.3.7 表单标记 284

11.3.8 链接标记 290

11.3.9 框架标记 291

11.3.10 多媒体标记 294

11.3.11 跑马灯标记 296

11.3.12 特殊字符 297

第12章 JavaScript 299

12.1 JavaScript的特点及作用 300

12.1.1 JavaScript是被嵌入到HTML中的 300

12.1.2 JavaScript运行的环境 301

12.1.3 JavaScript是解释执行的 301

12.1.4 JavaScript是一种弱类型语言 302

12.1.5 JavaScript以对象为基础 302

12.1.6 JavaScript通过事件驱动执行 302

12.1.7 JavaScript的作用是多方面的 303

12.1.8 JavaScript是不断发展和广泛应用的 303

12.2 JavaScript的基本语法 303

12.2.1 基本数据结构 303

12.2.2 运算符和表达式 306

12.2.3 控制结构和循环 309

12.3 window对象 314

12.3.1 window窗口对象的属性 314

12.3.2 window窗口对象的方法 316

12.4 document对象 320

12.4.1 document对象的属性 321

12.4.2 document对象的write()和writeIn()方法 323

12.4.3 document对象的close()方法 323

12.4.4 document对象的getSelection()方法 323

12.5 文本对象 324

12.5.1 文本对象的defaultValue属性 324

12.5.2 文本对象的name属性 326

12.5.3 文本对象的value属性 326

12.5.4 文本对象的focus()方法 326

12.5.5 文本对象的select()方法 327

12.6 按钮对象 329

12.6.1 button、submit、reset对象 329

12.6.2 checkbox对象 330

12.6.3 radio对象 330

12.7 location对象 332

12.7.1 hash属性 332

12.7.2 href属性 333

12.7.3 pathname属性 334

12.7.4 protocol属性 334

12.8 history对象 335

12.9 字符串对象 335

12.9.1 转义字符 335

12.9.2 字符串对象的属性 336

12.9.3 字符串对象的“+”连接方法 337

12.9.4 字符串对象charAt方法 337

12.9.5 字符串对象indexOf方法 338

12.9.6 字符串对象lastIndexOf方法 338

12.9.7 字符串对象substring 339

12.9.8 字符串对象toLowerCase方法 339

12.9.9 字符串对象toUpperCase方法 340

12.10 日期对象 340

12.10.1 日期对象的属性 340

12.10.2 new方法 340

12.10.3 getYear()方法 341

12.10.4 getMonth()方法 342

12.10.5 getDate()方法 342

12.10.6 getDay()方法 343

12.10.7 getTime()方法 344

12.10.8 setTime()方法 344

12.10.9 setYear()方法 345

12.10.10 getTimezoneOffset()方法 345

12.10.11 toGMTString()方法 346

12.10.12 toLocaleString()方法 347

12.11 数学对象 347

12.11.1 Math对象的属性 347

12.11.2 Math对象的abs方法 348

12.11.3 Math对象的acos方法 349

12.11.4 Math对象的max方法 350

12.11.5 Math对象的round/floor/ceil方法 350

12.11.6 Math对象的random方法 351

12.12 数组对象 352

12.12.1 数组对象的创建 352

12.12.2 数组对象的扩充 353

第13章 CSS和XML 355

13.1 CSS 356

13.1.1 什么是CSS 356

13.1.2 CSS的历史 357

13.1.3 使用CSS的优点 357

13.1.4 CSS样式解决了一个普遍的问题 358

13.1.5 使用CSS之前 358

13.1.6 如何将样式表加入网页 359

13.1.7 CSS的语法 361

13.2 XML 369

13.2.1 XML简介 369

13.2.2 XML的历史 369

13.2.3 XML的作用 370

13.2.4 XML与HTML的主要差异 372

13.2.5 一个XML文档实例 372

13.2.6 XML文档形成一种树结构 373

13.2.7 XML的语法规则 374

附录A 大学学籍管理系统安装配制说明书 376

附录B 大学学籍管理系统 394

附录C 软件测试中常见的中英文对照 407

参考文献 412