51Testing系列丛书:QTP自动化测试实践

发表于:2008-6-17 15:56

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:陈能技    来源:51Testing软件测试网

分享:

目录
第1篇  自动化测试基础篇
第1章  软件测试基础    2
1.1  软件缺陷与软件测试 2
1.1.1  软件缺陷与硬件缺陷的异同 2
1.1.2  如何通过软件测试发现软件缺陷 3
1.2  软件质量与软件测试 4
1.2.1  软件质量管理在项目管理中的地位 4
1.2.2  软件开发模式与软件测试 5
1.2.3  软件开发模式与自动化测试 5
1.2.4  软件测试能保证软件质量吗 6
1.3  软件开发与软件测试 6
1.3.1  软件开发与软件测试的对立统一 6
1.3.2  测试人员需要的开发技术 7
第2章  软件自动化测试    8
2.1  手工测试与自动化测试 8
2.1.1  手工测试的缺点 8
2.1.2  什么时候使用自动化测试 9
2.1.3  自动化测试——你准备好了吗 9
2.2  如何开展自动化测试 11
2.2.1  选取合适的测试项目来开展自动化测试 11
2.2.2  自动化测试介入的时机 11
2.2.3  自动化测试工程师的基本素质和技能要求 12
2.2.4  自动化测试的成本 12
2.3  自动化测试方案 13
2.3.1  选择自动化测试方案 13
2.3.2  自动化测试脚本的编写方法 14
2.3.3  线性脚本的编写方法 14
2.3.4  结构化脚本的编写方法 15
2.3.5  共享脚本的编写方法 15
2.3.6  数据驱动脚本的编写方法 16
2.3.7  关键字驱动脚本的编写方法 16
2.3.8  合理选择自动化测试脚本开发方法 17
2.4  实用性自动化测试策略 17
2.4.1  自动化测试工具的问题 17
2.4.2  自动化测试的管理规范 18
2.4.3  自动化测试中人的因素 20
第3章  软件自动化测试工具    21
3.1  自动化测试工具类型 21
3.1.1  商业测试工具 22
3.1.2  开源测试工具 22
3.1.3  自主开发测试工具 23
3.2  自动化测试工具选型 24
3.2.1  测试工具评估 25
3.2.2  测试工具试用 25
3.2.3  自动化测试工具的培训 25
3.3  自动化测试工具的原理 26
3.3.1  基于代码层面的功能自动化测试工具 27
3.3.2  基于浏览器和DOM对象模型的功能自动化测试工具 30
3.3.3  基于GUI对象识别的测试工具原理 34
3.3.4  反射机制在自动化功能测试工具中的使用 36
3.3.5  UI Automation在自动化功能测试工具中的使用 38
3.3.6  QTP对象识别技术 38
第2篇  QTP使用基础篇
第4章  QuickTest Professional的安装和配置    42
4.1  QTP 9.2的安装 42
4.1.1  安装要求 42
4.1.2  QTP 9.2支持的环境和程序 43
4.1.3  QTP 9.2支持的插件 43
4.1.4  安装步骤 44
4.2  QTP 9.2的基本配置 48
4.2.1  QTP的帮助文档 48
4.2.2  QTP的视频教程 48
4.2.3  QTP自带的样例程序 48
4.2.4  启动QTP 50
4.2.5  插件加载设置与管理 50
4.2.6  创建一个空的测试项目 51
4.2.7  录制和测试运行设置 51
4.2.8  指定需要录制的应用程序 53
4.2.9  使用QTP编写第一个自动化测试脚本 55
第5章  QuickTest Professional的基本使用方法    57
5.1  QTP基本功能的使用 57
5.1.1  QTP自动化测试的基本过程 58
5.1.2  在关键字视图中编辑测试脚本 58
5.1.3  在关键字视图中为测试步骤添加注释 59
5.1.4  在关键字视图中添加测试信息的输出 59
5.1.5  插入检查点(Checkpoint) 60
5.1.6  在关键字视图中插入新的测试步骤 61
5.1.7  在专家视图中编辑测试脚本 64
5.1.8  脚本编辑器的使用 65
5.2  编辑测试脚本 66
5.2.1  识别对象 66
5.2.2  Object Spy的使用 67
5.2.3  对象库管理 69
5.2.4  把测试对象添加到对象库中 69
5.2.5  导出对象库文件 71
5.2.6  在测试脚本中访问对象库的测试对象 71
5.2.7  添加新的Action 73
5.2.8  关联Action的对象库 74
5.2.9  编辑新的Action 76
5.2.10  在函数库中创建自定义函数 76
5.3  运行和调试测试脚本 80
5.3.1  语法检查 80
5.3.2  使用断点 80
5.3.3  单步调试 81
5.3.4  调试查看器的使用 82
5.3.5  运行整个测试 83
5.3.6  运行部分测试 84
5.3.7  批量运行测试 84
5.4  分析测试结果 85
5.4.1  选择测试运行结果的存储位置 85
5.4.2  查看概要测试运行结果 86
5.4.3  查看检查点的结果 87
5.4.4  查看测试过程的截屏 87
5.5  利用Active Screen来编辑测试脚本 88
5.5.1  查看Active Screen 89
5.5.2  Active Screen的设置 89
5.5.3  在Active Screen中选择并添加对象到对象库 91
5.5.4  选择Active Screen中的对象并输出其对象属性 93
5.5.5  在Active Screen中插入检查点 95
5.5.6  在Active Screen中选择对象并添加测试步骤 97
第6章  QuickTest Professional与其他工具的整合    100
6.1  与WinRunner的整合 100
6.1.1  在QTP中调用WinRunner的测试脚本 101
6.1.2  在QTP中调用WinRunner的函数 103
6.2  QTP与LoadRunner的整合 105
6.2.1  在QTP中为LoadRunner设计测试脚本 105
6.2.2  使用Silent Test Runner模拟LoadRunner的调用 107
6.2.3  在LoadRunner中插入和运行QTP脚本 109
6.2.4  在LoadRunner中运行QTP脚本需要注意的几点 111
第3篇  QTP脚本开发篇
第7章  关键字驱动测试    113
7.1  关键字驱动测试方法 113
7.1.1  什么是关键字驱动测试方法 114
7.1.2  关键字测试驱动框架 114
7.1.3  关键字驱动实现自动化测试的阶段划分 115
7.1.4  什么时候使用关键字驱动测试方法 115
7.2  可视化编辑测试步骤 116
7.2.1  编辑对象库 116
7.2.2  选择测试对象 117
7.2.3  选择测试对象相应的操作 118
7.2.4  设置测试逻辑 118
7.3  检查点的使用 120
7.3.1  为测试添加检查点 120
7.3.2  检查点类型 120
7.3.3  添加标准检查点 121
7.3.4  添加图像检查点 122
7.3.5  添加位图检查点 124
7.3.6  添加表格检查点 125
7.3.7  添加文本检查点 127
7.3.8  添加文本区域检查点 129
7.3.9  添加可访问性检查点 131
7.3.10  添加页面检查点 133
7.3.11  添加数据库检查点 135
7.3.12  添加XML检查点 138
第8章 数据驱动测试    141
8.1  数据驱动测试方法 141
8.1.1  什么时候使用数据驱动测试方法 142
8.1.2  数据驱动测试的一般步骤 142
8.2  参数化测试 143
8.2.1  通过参数化测试来提高测试的灵活性 143
8.2.2  参数化测试步骤 144
8.2.3  使用随机数来进行参数化 146
8.2.4  参数化检查点 148
8.2.5  设置数据表格迭代方式 149
8.3  Action测试输入的参数化 152
8.3.1  编辑Action的属性 152
8.3.2  添加Action的输入参数 153
8.3.3  调用Action 155
8.4  使用环境变量的参数化 157
8.4.1  定义和设置环境变量 158
8.4.2  在测试步骤中绑定环境变量值 159
8.4.3  导出环境变量到XML文件 161
8.4.4  导入外部环境变量文件 162
8.5  使用数据驱动器来参数化测试 163
8.5.1  数据驱动器的使用方法 163
8.5.2  数据驱动向导 164
第9章  VBScript基础    167
9.1  脚本语言简介 167
9.1.1  Windows脚本语言 168
9.1.2  测试工具的“厂商语言” 168
9.2  VBScript语言基础 168
9.2.1  VBScript的数据类型 169
9.2.2  变量子类型(Variant Subtypes) 169
9.2.3  VBScript的变量 171
9.2.4  VBScript的运算符 171
9.2.5  VBScript的条件语句 172
9.2.6  VBScript的循环语句 172
9.2.7  VBScript的Sub与Function 173
9.2.8  VBScript的数组 174
9.3  VBScript与正则表达式 175
9.3.1  正则表达式简介 175
9.3.2  在VBScript中使用正则表达式 175
9.3.3  正则表达式在自动化测试中的使用 177
第10章  QTP测试脚本开发    180
10.1  熟练使用专家视图 180
10.1.1  专家视图与关键字视图的对应关系 181
10.1.2  在专家视图中编辑测试脚本的方法 181
10.1.3  输入代码注释 183
10.1.4  自动化VBScript语法识别和完成 183
10.2  QTP的Utility对象的使用 184
10.2.1  使用PathFinder对象查找文件 185
10.2.2  使用XMLUtil对象检查XML 186
10.2.3  使用Extern对象加载DLL 186
10.2.4  SystemUtil对象的使用 187
10.2.5  使用Reporter对象写入测试结果 188
10.2.6  Environment对象的使用 189
10.3  QTP内置函数的使用 193
10.3.1  使用Print函数显示信息 193
10.3.2  使用Wait函数暂停测试脚本的执行 194
10.3.3  使用ExecuteFile执行VBScript脚本 196
10.4  虚拟对象管理 197
10.4.1  什么是虚拟对象 197
10.4.2  定义虚拟对象 197
10.4.3  虚拟对象的使用和管理 200
10.5  QTP测试脚本开发技巧 202
10.5.1  在运行过程中设置测试选项 202
10.5.2  巧用Setting对象的Item属性 203
10.5.3  利用DotNetFactory对象访问.NET类库 205
10.5.4  自定义数据库检查点 206
10.6  Recovery Scenarios的使用 208
10.6.1  什么是Recovery Scenarios 208
10.6.2  什么时候使用Recovery Scenarios 208
10.6.3  定义Recovery Scenarios 208
10.6.4  关联Recovery Scenario到测试脚本 216
10.6.5  Recovery Scenario的运行 218
10.7  利用DotNetFactory访问.NET对象 219
10.7.1  DotNetFactory的使用方法 219
10.7.2  访问.NET类库 220
10.7.3  访问C#编写的DLL 220
第11章  QTP描述性编程    222
11.1  使用描述性编程的时机 222
11.1.1  录制方式的测试脚本开发的问题 223
11.1.2  什么时候使用描述性编程方法 224
11.2  描述性编程的使用方法 224
11.2.1  直接描述的方式 225
11.2.2  直接描述方式的语法格式 226
11.2.3  描述性编程的“后续强迫性” 227
11.2.4  使用描述性编程的技巧 228
11.2.5  使用“With”关键字简化代码 229
11.2.6  使用Description对象 229
11.2.7  设置Description对象的RegularExpression属性 230
11.2.8  在ChildObjects对象中使用Description对象 230
11.3  用编程的方式创建检查点 231
11.3.1  通过GetROProperty添加对控件的动态属性的判断 231
11.3.2  自定义的检查点 233
第12章  使用QTP测试标准Windows对象    235
12.1  Desktop对象的使用 235
12.1.1  使用CaptureBitmap方法来截屏 235
12.1.2  使用ChildObjects方法获取某个对象中包含的对象列表 236
12.1.3  使用RunAnalog方法运行低级录制过程 236
12.2  SystemUtil对象的使用 237
12.2.1  使用Run方法运行文件或程序 238
12.2.2  在脚本运行过程中屏蔽鼠标和键盘 238
12.2.3  关闭进程 239
12.3  Clipboard对象的使用 239
12.3.1  Clipboard对象介绍 239
12.3.2  Clipboard对象的使用方法 240
12.4  标准Windows控件的基本属性和方法 240
12.4.1  使用Exist属性来判断控件是否存在 240
12.4.2  使用CheckProperty检查控件属性 241
12.4.3  使用GetROProperty获取控件属性 242
12.5  各类标准Windows控件的测试 242
12.5.1  Dialog对象的测试 242
12.5.2  Static对象的测试 242
12.5.3  WinButton对象的测试 243
12.5.4  WinCalendar对象的测试 243
12.5.5  WinCheckBox对象的测试 245
12.5.6  WinComboBox对象的测试 245
12.5.7  Window对象的测试 246
12.5.8  WinEdit对象的测试 246
12.5.9  WinEditor对象的测试 247
12.5.10  WinList对象的测试 247
12.5.11  WinListView对象的测试 248
12.5.12  WinMenu对象的测试 249
12.5.13  WinRadioButton对象的测试 250
12.5.14  WinScrollBar对象的测试 250
12.5.15  WinSpin对象的测试 251
12.5.16  WinStatusBar对象的测试 252
12.5.17  WinTab对象的测试 253
12.5.18  WinToolbar对象的测试 254
12.5.19  WinTreeView对象的测试 254
12.5.20  WinObject对象的测试 256
第13章  使用QTP测试ActiveX对象    257
13.1  ActiveX对象的测试 257
13.1.1  Object属性的使用 258
13.1.2  AcxUtil对象的FireEvent方法的使用 259
13.2  各类ActiveX控件的测试 259
13.2.1  RadioButton类ActiveX控件的测试 260
13.2.2  CheckBox类ActiveX控件的测试 261
13.2.3  Calendar类ActiveX控件的测试 261
13.2.4  Label类ActiveX控件的测试 263
13.2.5  ProgressBar类ActiveX控件的测试 264
13.2.6  SliderBar类ActiveX控件的测试 265
13.2.7  LED类ActiveX控件的测试 266
13.2.8  ListBox类ActiveX控件的测试 267

第14章  使用QTP测试VB对象    269
14.1  Visual Basic控件的测试 269
14.2  对各类VB控件的测试 270
14.2.1  VbButton对象的测试 270
14.2.2  VbCheckBox对象的测试 271
14.2.3  VbComboBox对象的测试 272
14.2.4  VbEdit对象的测试 273
14.2.5  VbEditor对象的测试 273
14.2.6  VbFrame对象的测试 274
14.2.7  VbLabel对象的测试 275
14.2.8  VbList对象的测试 275
14.2.9  VbRadioButton对象的测试 276
14.2.10  VbScrollBar对象的测试 277
14.2.11  VbWindow对象的测试 277
第15章  使用QTP测试标准Web对象    279
15.1  Web对象的测试 279
15.1.1  加载Web插件 279
15.1.2  Web的录制和运行设置 280
15.1.3  QTP支持的浏览器 281
15.1.4  Windows Applications的录制和运行设置 282
15.1.5  设置IE的“Enable Tabbed Browsering”选项 283
15.1.6  使用Object属性访问DOM对象 284
15.1.7  使用Browser对象控制浏览器的导航 284
15.2  对各类Web对象的测试 285
15.2.1  Page对象的测试 285
15.2.2  Frame对象的测试 286
15.2.3  Image对象的测试 286
15.2.4  Link对象的测试 287
15.2.5  WebButton对象的测试 289
15.2.6  WebCheckBox对象的测试 289
15.2.7  WebEdit对象的测试 291
15.2.8  WebFile对象的测试 291
15.2.9  WebList对象的测试 293
15.2.10  WebRadioGroup对象的测试 293
15.2.11  WebTable对象的测试 294
15.2.12  WebXML对象的测试 296
15.2.13  WebElement对象的测试 296
第4篇 QTP高级技术篇
第16章  QTP的插件技术    298
16.1  QTP插件简介 298
16.1.1  查看插件安装和加载情况 298
16.1.2  插件分离的好处 299
16.2  内建插件与外部插件 300
16.2.1  内建插件 300
16.2.2  外部插件 300
16.2.3  插件的安装 301
16.3  插件加载与插件管理 303
16.3.1  QTP的插件加载过程分析 303
16.3.2  关联QTP插件与测试脚本 304
16.3.3  插件关联管理 305
16.3.4  通过编程方式启动QTP并加载插件 306
16.3.5  插件与检查点类型的关系 307
第17章  使用QTP的.NET插件测试.NET平台软件    309
17.1  QTP的.NET插件 309
17.1.1  .NET插件安装与设置 310
17.1.2  .NET Windows Forms Spy的使用 311
17.1.3  利用.NET Windows Forms Spy来分析.NET控件 313
17.2  测试.NET Windows Forms控件 314
17.2.1  QTP支持的.NET Windows Forms控件 314
17.2.2  通过Object属性来获取对象的内部属性 315
17.2.3  通过Object属性访问并执行控件方法 316
17.2.4  查看Object属性的两种方法 316
17.3  测试WPF控件 317
17.3.1  加载WPF插件 317
17.3.2  QTP支持的WPF控件 318
17.3.3  访问WPF控件的内部属性和方法 319
17.4  测试.NET Web Forms控件 320
17.4.1  QTP支持的.NET Web Forms控件 320
17.4.2  测试.NET Web Forms的程序的前提条件 321
17.4.3  利用Object属性来增强.NET Web Forms程序的测试 321
第18章  QTP的.NET插件扩展技术及其使用    323
18.1  QTP的.NET插件提供的扩展模块 323
18.1.1  .NET插件的扩展模块机制介绍 324
18.1.2  使用.NET Windows Forms Spy来协助开发扩展性 324
18.2  使用C#对QTP的.NET插件进行扩展 325
18.2.1  安装Custom Server模板 325
18.2.2  建立.NET控件的测试扩展项目 326
18.2.3  实现控件录制逻辑 328
18.2.4  注册TrackBar控件的事件处理器 328
18.2.5  实现控件的运行逻辑 329
18.2.6  对QTP进行配置 329
18.2.7  扩展项目的运行 331
第19章  QTP的自动化对象模型及其使用    333
19.1  QTP自动化对象模型简介 333
19.1.1  什么时候使用自动化对象模型库 333
19.1.2  选择开发语言和环境 334
19.1.3  对象模型库基本元素 335
19.2  在C#中使用QTP自动化对象模型 337
19.2.1  引用对象库 337
19.2.2  在C#中调用QTP对象模型库 338
19.3  常用的自动化对象模型方法介绍 339
19.3.1  在C#中启动QTP并加载指定插件 339
19.3.2  在VBScript脚本中设置QTP选项 340
19.3.3  导出QTP选项设置到VBScript脚本 341
19.3.4  在VBScript脚本中设置QTP的环境变量 343
19.3.5  在VBScript脚本中设置测试运行选项 346
19.3.6  导出QTP测试设置到VBScript脚本中 348
第20章  使用QTP开发一个猴子测试工具    350
20.1  猴子测试 350
20.1.1  猴子测试简介 350
20.1.2  笨猴子与聪明猴子 351
20.1.3  什么时候使用猴子测试 351
20.2  使用QTP设计一个笨猴子 352
20.2.1  用QTP实现笨猴子的基本要素 352
20.2.2  使用Randomize函数产生随机数 352
20.2.3  使用RandomNumber对象获取随机数 353
20.2.4  通过WMI对象获取屏幕高度和宽度 353
20.2.5  利用DotNetFactory获取屏幕高度和宽度 353
20.2.6  让猴子控制鼠标和键盘 354
20.2.7  调用C#代码中封装的Windows API函数 354
20.2.8  输入随机字符串 358
20.2.9  记录测试信息 359
20.2.10  截屏 359
20.2.11  记录性能信息 360
20.2.12  基本的猴子测试工具 362
20.2.13  猴子测试工具的改进点 363
第21章  使用QTP测试Web Services    365
21.1  Web Services插件介绍 365
21.1.1  什么是Web Services 365
21.1.2  Web Services插件的帮助文档 366
21.2  使用Web Services插件测试Web Services 366
21.2.1  Web Service测试向导的使用 367
21.2.2  运行Web Service测试 371
21.2.3  修改Web Service测试脚本中的检查点 373
21.2.4  参数化Web服务的输入 375
21.2.5  在对象库中添加Web Service测试对象 377
21.2.6  检查WSDL是否满足WS-I标准 379
21.2.7  使用ValidateWSDL方法检查WSDL 382
第22章  如何编写高质量的QTP测试脚本    384
22.1  QTP测试脚本编码规范 384
22.1.1  常量命名规范 385
22.1.2  变量命名规范 385
22.1.3  对象命名规范 386
22.1.4  代码注释规范 386
22.1.5  代码风格 387
22.2  通过管理对象库来提高代码的可读性 388
22.2.1  直接录制的测试脚本的问题 388
22.2.2  通过修改命名来达到更加易读的效果 389
22.2.3  缩减代码行长度的方法 390
22.2.4  以中文命名测试对象 392

更多51Testing作品系列:http://www.51testing.com/html/36/category-catid-136.html

样章连载:http://www.51testing.com/html/41/category-catid-141.html

22/2<12
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • ananbo
    2013-1-28 15:43:20

    这书没什么可看的,你要是能把QTP自带的文档看明白了,这些书都是垃圾

  • cckaji
    2009-4-08 20:56:40

    建议附带视频讲解文件

  • meiguishijun
    2008-9-25 18:09:39

    广州天河区的图书购书中心五楼有卖的.

  • honeyy
    2008-8-03 00:48:38

    淘宝网上就有卖的。。www.taobao.com
    这本书对QTP工具使用倒是非常详细,不过忽略了脚本的讲解,还有对工具的应用缺乏点实践性。不过对于想了解QTP这个工具的同学可以看看。总归来说,这本书对于我这种初学者来说还是很有帮助的。

  • 雨2008
    2008-7-17 15:29:14

    哪有卖啊?急需

  • thloong
    2008-7-02 12:00:30

    www.dangdang.com上没卖
    www.amazon.cn也没卖,郁闷

  • kakamissyou
    2008-6-29 20:15:00

    看看吧,不过看目录是一般,希望实物有惊喜!作为测试界的少有的这方面的书ji还是要读一下!谢谢!

  • 51mobile
    2008-6-23 12:32:45

    已经有上市了?书店可以买得到么?

  • bingbingzi
    2008-6-19 15:05:54

    本书网络购买地址 http://www.china-pub.com/39984

  • fuxiujun
    2008-6-18 16:54:49

    很想买呢

  • xzcg
    2008-6-18 11:32:22

    上市以后一定要通知一下
    一定去买

  • schyn
    2008-6-18 11:22:31

    看目录已经流口水了

  • FLY000
    2008-6-18 10:10:51

    一定要买一本看。

  • 陈能技
    2008-6-17 22:21:05

    呵呵,谢谢支持,多多捧场,批评指正,不胜感激。。。

  • zhangmeng988
    2008-6-17 17:41:52

    好东东,分享一下

  • 51testing
    2008-6-17 17:26:56

    感谢各位网友的关注和支持,本系列丛书一上市即可以在全国各大书店有售,同时各种正当合法网络销售途径都有售。具体上市时间在七月。敬请期待!

  • donking
    2008-6-17 16:28:01

    哪里有卖的?

  • pwzxz
    2008-6-17 16:06:12

    非常期待hoho

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号