QTP自動化測試實踐

所属分类:軟件工程及軟件方法學  
出版时间:2008-6   出版时间:電子工業出版社   作者:陳能技 著

   页数:393  

前言

  軟件產品的測試與硬件產品的檢測一樣需要認真、嚴格、細致的工作態度,但是軟件測試似乎比硬件的檢測來得復雜得多,並且不能充分利用檢測工具的精確工作能力,依賴測試人員的個人判斷、對業務知識的掌握深度、測試用例的設計能力、智慧和經驗。  最近幾年,軟件測試工具取得了長足的進步,逐步得到應用和普及,在軟件測試的各個領域發揮著應有的作用。各軟件企業也紛紛“上馬”自動化測試項目,自動化功能測試工具作為開展功能自動化測試項目不可或缺的一部分,是每個實施自動化測試的測試團隊需要認真選擇和合理應用的一項內容。  Quick Test Professional(簡稱QTP)是這些測試工具中的佼佼者,被譽為軟件測試人員的“倚天劍”,擁有先進的關鍵字驅動測試能力,以及強大的測試腳本開發能力,關鍵在于測試人員如何使用它。用好了,則是“倚天劍”,用不好,則是一堆“廢鐵”。  很多軟件企業耗費巨資購買了這些測試工具,但是沒有合理地使用,被測試人員擱置在一旁。究其原因是因為沒有充分認識自動化測試的價值,缺乏必要的自動化測試理論培訓和測試工具的使用培訓。  本書基于流行的自動化功能測試工具QTP,詳細介紹了自動化測試的基礎知識、自動化測試工具的選擇、自動化測試項目的開展方法,並且深入介紹了QTP的基本使用方法、測試腳本開發技巧、使用QTP測試各種類型的測試對象的方法,以及QTP的各種高級技巧。通過本書,讀者可以快速掌握自動化測試的基本方法、QTP的使用方法,以及各種測試腳本開發的實戰經驗和技巧,能在實際的自動化測試項目中派上用場。  本書的內容安排  本書共分為4篇,共22章,從軟件測試的基本概念講起,再進一步介紹自動化測試的基本原理和方法,然後基于QTP介紹測試工具的使用方法、測試腳本的開發技巧,以及QTP的高級功能的使用方法。  第1篇(第1章-第3章)自動化測試基礎篇。  講述了軟件測試的基礎知識,自動化測試的基礎知識,自動化測試項目的管理方法,自動化測試工具的基本原理,測試工具的選型等。這3章知識是自動化軟件測試工程師必須具備的基礎知識,同時也是軟件測試入門者急需了解和掌握的知識。  第2篇(第4章-第6章)QTP使用基礎篇。  講述了QTP的安裝和配置方法,QTP基本功能的使用、測試項目的創建方法、測試腳本的編寫和調試方法等,並且介紹了QTP與其他測試工具(WinRunner、LoadRunner)的整合方法。這3章內容是自動化測試工程師,尤其是采用QTP作為測試腳本開發工具的測試人員必須掌握的基本知識。  第3篇(第7章-第15章)QTP腳本開發篇。  深入講解QTP的各種功能,包括關鍵字驅動測試方法的使用、數據驅動測試方法的使用、描述性編程方法的使用,並且深入介紹了QTP的腳本開發語言VBScript的使用,另外還闡述了QTP的Action管理、虛擬對象管理、函數庫管理等內容,對于常見的測試對象和控件類型,也做了相對全面的介紹,包括︰Windows標準對象、ActiveX對象、VB對象、Web對象。  第4篇(第16章-第22章)QTP高級技術篇。  主要介紹了QTP的插件技術以及.NET插件擴展技術的使用,另外還介紹了QTP的自動化對象模型的使用方法,最後綜合應用各種測試腳本開發技巧介紹如何開發一個“猴子”測試程序。  本書由淺入深,由理論到實踐,尤其適合初級讀者逐步學習和完善自己的自動化測試方面的知識結構,並且結合QTP各種實用的應用技巧介紹如何使用各種測試腳本的開發方法,是QTP自動化測試團隊和自動化測試工程師的案頭指南和最佳實踐指導。  本書的特點  本書在講解自動化測試腳本開發知識和QTP的使用過程中,通過詳細的例子進行分析和講解,讓讀者可以通過例子進行理解,並且可以自己進行嘗試,非常適合獨立學習和研究自動化測試技術的初級測試工程師參考使用。  本書以循序漸進的方式講解了自動化功能測試的基本知識,結合QTP的使用,深入講解自動化測試腳本的開發,涉及目前流行的數據驅動測試方法、關鍵字驅動測試方法等方面的內容,並且詳細講解了如何使用QTP測試Windows控件、ActiveX控件、VB控件、Web控件等。  對于希望了解和使用QTP的插件技術的測試工程師,還詳細講解了QTP的.NET插件的使用,包括利用.NET插件測試.NET Windows Form、Web Form,以及最新的WPF控件。同時還介紹了.NET插件的擴展技術,以及QTP的自動化對象模型的使用方法。  適合閱讀本書的讀者  本書面向使用QTP測試工具進行自動化功能測試的測試工程師,以及希望了解自動化功能測試的測試員。  編者

内容概要

  本書面向使用QuickTest Professional測試工具進行自動化功能測試的測試工程師,以及希望了解自動化功能測試的測試員。本書以循序漸進的方式講解了自動化功能測試的基本知識,結合QuickTest Professional的使用,深入講解自動化測試腳本的開發,涉及目前流行的數據驅動測試方法、關鍵字驅動測試方法等方面的內容,並且詳細講解了如何使用QuickTest Professional測試Windows控件、ActiveX控件、VB控件、Web控件等。  對于希望了解和使用QuickTest Professional的插件技術的測試工程師,還詳細講解了QuickTest Professional的.NET插件的使用,包括利用.NET插件測試.NET Windows Form、Web Form,以及最新的WPF控件。同時還介紹了.NET插件的擴展技術,以及QuickTest Professional的自動化對象模型的使用方法。  本書在講解自動化測試腳本開發知識和QuickTest Professional的使用的過程中,通過詳細的例子進行分析和講解,讓讀者可以通過例子進行理解,並且可以自己進行嘗試,非常適合獨立學習和研究自動化測試技術的初級測試工程師參考使用。

作者简介

  陳能技,廣州賽寶騰睿信息科技有限公司測試經理、質量保障部主管。CSDN博客專家、51testing博客專家。  畢業于廣東工業大學計算機學院。  多年從事計算機軟件測試和質量改進工作,曾任程序員、測試工程師、技術支持工程師、QA、內審員等職務,具有豐富的測試團隊組建、自動化測試管理經驗。目前專注于軟件 自動化測試及管理領域,倡導實用主義測試理念,堅信“Seeing is NOT believing,Testing is believing!”。

书籍目录

第1篇 自动化测试基础篇第1章 软件测试基础1.1 软件缺陷与软件测试1.1.1 软件缺陷与硬件缺陷的异同1.1.2 如何通过软件测试发现软件缺陷1.2 软件质量与软件测试1.2.1 软件质量管理在项目管理中的地位1.2.2 软件开发模式与软件测试1.2.3 软件开发模式与自动化测试1.2.4 软件测试能保证软件质量吗1.3 软件开发与软件测试1.3.1 软件开发与软件测试的对立统一1.3.2 测试人员需要的开发技术第2章 软件自动化测试2.1 手工测试与自动化测试2.1.1 手工测试的缺点2.1.2 什么时候使用自动化测试2.1.3 自动化测试——你准备好了吗2.2 如何开展自动化测试2.2.1 选取合适的测试项目来开展自动化测试2.2.2 自动化测试介入的时机2.2.3 自动化测试工程师的基本素质和技能要求2.2.4 自动化测试的成本2.3 自动化测试方案2.3.1 选择自动化测试方案2.3.2 自动化测试脚本的编写方法2.3.3 线性脚本的编写方法2.3.4 结构化脚本的编写方法2.3.5 共享脚本的编写方法2.3.6 数据驱动脚本的编写方法2.3.7 关键字驱动脚本的编写方法2.3.8 合理选择自动化测试脚本开发方法2.4 实用性自动化测试策略2.4.1 自动化测试工具的问题2.4.2 自动化测试的管理规范2.4.3 自动化测试中人的因素第3章 软件自动化测试工具3.1 自动化测试工具类型3.1.1 商业测试工具3.1.2 开源测试工具3.1.3 自主开发测试工具3.2 自动化测试工具选型3.2.1 测试工具评估3.2.2 测试工具试用3.2.3 自动化测试工具的培训3.3 自动化测试工具的原理3.3.1 基于代码层面的功能自动化测试工具3.3.2 基于浏览器和DOM对象模型的功能自动化测试工具3.3.3 基于GUI对象识别的测试工具原理3.3.4 反射机制在自动化功能测试工具中的使用3.3.5 UI Automation在自动化功能测试工具中的使用3.3.6 QTP对象识别技术第2篇 QTP使用基础篇第4章 QuickTest Professional的安装和配置4.1 QTP 9.2的安装4.1.1 安装要求4.1.2 QTP 9.2支持的环境和程序4.1.3 QTP 9.2支持的插件4.1.4 安装步骤4.2 QTP 9.2的基本配置4.2.1 QTP的帮助文档4.2.2 QTP的视频教程4.2.3 QTP自带的样例程序4.2.4 启动QTP4.2.5 插件加载设置与管理4.2.6 创建一个空的测试项目4.2.7 录制和测试运行设置4.2.8 指定需要录制的应用程序4.2.9 使用QTP编写第一个自动化测试脚本第5章 QuickTest Professional的基本使用方法5.1 QTP基本功能的使用5.1.1 QTP自动化测试的基本过程5.1.2 在关键字视图中编辑测试脚本5.1.3 在关键字视图中为测试步骤添加注释5.1.4 在关键字视图中添加测试信息的输出5.1.5 插入检查点(Checkpoint)5.1.6 在关键字视图中插入新的测试步骤5.1.7 在专家视图中编辑测试脚本5.1.8 脚本编辑器的使用5.2 编辑测试脚本5.2.1 识别对象5.2.2 Object Spy的使用5.2.3 对象库管理5.2.4 把测试对象添加到对象库中5.2.5 导出对象库文件5.2.6 在测试脚本中访问对象库的测试对象5.2.7 添加新的Action5.2.8 关联Action的对象库5.2.9 编辑新的Action5.2.10 在函数库中创建自定义函数5.3 运行和调试测试脚本5.3.1 语法检查5.3.2 使用断点5.3.3 单步调试5.3.4 调试查看器的使用5.3.5 运行整个测试5.3.6 运行部分测试5.3.7 批量运行测试5.4 分析测试结果5.4.1 选择测试运行结果的存储位置5.4.2 查看概要测试运行结果5.4.3 查看检查点的结果5.4.4 查看测试过程的截屏5.5 利用Active Screen来编辑测试脚本5.5.1 查看Active Screen5.5.2 Active Screen的设置5.5.3 在Active Screen中选择并添加对象到对象库5.5.4 选择Active Screen中的对象并输出其对象属性5.5.5 在Active Screen中插入检查点5.5.6 在Active Screen中选择对象并添加测试步骤第6章 QuickTest Professional与其他工具的整合6.1 与WinRunner的整合6.1.1 在QTP中调用WinRunner的测试脚本6.1.2 在QTP中调用WinRunner的函数6.2 QTP与LoadRunner的整合6.2.1 在QTP中为LoadRunner设计测试脚本6.2.2 使用Silent Test Runner模拟LoadRunner的调用6.2.3 在LoadRunner中插入和运行QTP脚本6.2.4 在LoadRunner中运行QTP脚本需要注意的几点第3篇 QTP脚本开发篇第7章 关键字驱动测试7.1 关键字驱动测试方法7.1.1 什么是关键字驱动测试方法7.1.2 关键字测试驱动框架7.1.3 关键字驱动实现自动化测试的阶段划分7.1.4 什么时候使用关键字驱动测试方法7.2 可视化编辑测试步骤7.2.1 编辑对象库7.2.2 选择测试对象7.2.3 选择测试对象相应的操作7.2.4 设置测试逻辑7.3 检查点的使用7.3.1 为测试添加检查点7.3.2 检查点类型7.3.3 添加标准检查点7.3.4 添加图像检查点7.3.5 添加位图检查点7.3.6 添加表格检查点7.3.7 添加文本检查点7.3.8 添加文本区域检查点7.3.9 添加可访问性检查点7.3.10 添加页面检查点7.3.11 添加数据库检查点7.3.12 添加XML检查点第8章 数据驱动测试8.1 数据驱动测试方法8.1.1 什么时候使用数据驱动测试方法8.1.2 数据驱动测试的一般步骤8.2 参数化测试8.2.1 通过参数化测试来提高测试的灵活性8.2.2 参数化测试步骤8.2.3 使用随机数来进行参数化8.2.4 参数化检查点8.2.5 设置数据表格迭代方式8.3 Action测试输入的参数化8.3.1 编辑Action的属性8.3.2 添加Action的输入参数8.3.3 调用Action8.4 使用环境变量的参数化8.4.1 定义和设置环境变量8.4.2 在测试步骤中绑定环境变量值8.4.3 导出环境变量到XML文件8.4.4 导入外部环境变量文件8.5 使用数据驱动器来参数化测试8.5.1 数据驱动器的使用方法8.5.2 数据驱动向导第9章 VBScript基础9.1 脚本语言简介9.1.1 Windows脚本语言9.1.2 测试工具的“厂商语言”9.2 VBScript语言基础9.2.1 VBScript的数据类型9.2.2 变量子类型(Variant Subtypes)9.2.3 VBScript的变量9.2.4 VBScript的运算符9.2.5 VBScript的条件语句9.2.6 VBScript的循环语句9.2.7 VBScript的Sub与Function9.2.8 VBScript的数组9.3 VBScript与正则表达式9.3.1 正则表达式简介9.3.2 在VBScript中使用正则表达式9.3.3 正则表达式在自动化测试中的使用第10章 QTP测试脚本开发10.1 熟练使用专家视图10.1.1 专家视图与关键字视图的对应关系10.1.2 在专家视图中编辑测试脚本的方法10.1.3 输入代码注释10.1.4 自动化VBScript语法识别和完成10.2 QTP的Utility对象的使用10.2.1 使用PathFinder对象查找文件10.2.2 使用XMLUtil对象检查XML10.2.3 使用Extern对象加载DLL10.2.4 SystemUtil对象的使用10.2.5 使用Reporter对象写入测试结果10.2.6 Environment对象的使用10.3 QTP内置函数的使用10.3.1 使用Print函数显示信息10.3.2 使用Wait函数暂停测试脚本的执行10.3.3 使用ExecuteFile执行VBScript脚本10.4 虚拟对象管理10.4.1 什么是虚拟对象10.4.2 定义虚拟对象10.4.3 虚拟对象的使用和管理10.5 QTP测试脚本开发技巧10.5.1 在运行过程中设置测试选项10.5.2 巧用Setting对象的Item属性10.5.3 利用DotNetFactory对象访问.NET类库10.5.4 自定义数据库检查点10.6 Recovery Scenarios的使用10.6.1 什么是Recovery Scenarios10.6.2 什么时候使用Recovery Scenarios10.6.3 定义Recovery Scenarios10.6.4 关联Recovery Scenario到测试脚本10.6.5 Recovery Scenario的运行10.7 利用DotNetFactory访问.NET对象10.7.1 DotNetFactory的使用方法10.7.2 访问.NET类库10.7.3 访问C#编写的DLL第11章 QTP描述性编程11.1 使用描述性编程的时机11.1.1 录制方式的测试脚本开发的问题11.1.2 什么时候使用描述性编程方法11.2 描述性编程的使用方法11.2.1 直接描述的方式11.2.2 直接描述方式的语法格式11.2.3 描述性编程的“后续强迫性”11.2.4 使用描述性编程的技巧11.2.5 使用“With”关键字简化代码11.2.6 使用Description对象11.2.7 设置Description对象的RegularExpression属性11.2.8 在ChildObjects对象中使用Description对象11.3 用编程的方式创建检查点11.3.1 通过GetROProperty添加对控件的动态属性的判断11.3.2 自定义的检查点第12章 使用QTP测试标准Windows对象12.1 Desktop对象的使用12.1.1 使用CaptureBitmap方法来截屏12.1.2 使用ChildObjects方法获取某个对象中包含的对象列表12.1.3 使用RunAnalog方法运行低级录制过程12.2 SystemUtil对象的使用12.2.1 使用Run方法运行文件或程序12.2.2 在脚本运行过程中屏蔽鼠标和键盘12.2.3 关闭进程12.3 Clipboard对象的使用12.3.1 Clipboard对象介绍12.3.2 Clipboard对象的使用方法12.4 标准Windows控件的基本属性和方法12.4.1 使用Exist属性来判断控件是否存在12.4.2 使用CheckProperty检查控件属性12.4.3 使用GetROProperty获取控件属性12.5 各类标准Windows控件的测试12.5.1 Dialog对象的测试12.5.2 Static对象的测试12.5.3 WinButton对象的测试12.5.4 WinCalendar对象的测试12.5.5 WinCheckBox对象的测试12.5.6 WinComboBox对象的测试12.5.7 Window对象的测试12.5.8 WinEdit对象的测试12.5.9 WinEditor对象的测试12.5.10 WinList对象的测试12.5.11 WinListView对象的测试12.5.12 WinMenu对象的测试12.5.13 WinRadioButton对象的测试12.5.14 WinScrollBar对象的测试12.5.15 WinSpin对象的测试12.5.16 WinStatusBar对象的测试12.5.17 WinTab对象的测试12.5.18 WinToolbar对象的测试12.5.19 WinTreeView对象的测试12.5.20 WinObject对象的测试第13章 使用QTP测试ActiveX对象13.1 ActiveX对象的测试13.1.1 Object属性的使用13.1.2 AcxUtil对象的FireEvent方法的使用13.2 各类ActiveX控件的测试13.2.1 RadioButton类ActiveX控件的测试13.2.2 CheckBox类ActiveX控件的测试13.2.3 Calendar类ActiveX控件的测试13.2.4 Label类ActiveX控件的测试13.2.5 ProgressBar类ActiveX控件的测试13.2.6 SliderBar类ActiveX控件的测试13.2.7 LED类ActiveX控件的测试13.2.8 ListBox类ActiveX控件的测试第14章 使用QTP测试VB对象14.1 Visual Basic控件的测试14.2 对各类VB控件的测试14.2.1 VbButton对象的测试14.2.2 VbCheckBox对象的测试14.2.3 VbComboBox对象的测试14.2.4 VbEdit对象的测试14.2.5 VbEditor对象的测试14.2.6 VbFrame对象的测试14.2.7 VbLabel对象的测试14.2.8 VbList对象的测试14.2.9 VbRadioButton对象的测试14.2.10 VbScrollBar对象的测试14.2.11 VbWindow对象的测试第15章 使用QTP测试标准Web对象15.1 Web对象的测试15.1.1 加载Web插件15.1.2 Web的录制和运行设置15.1.3 QTP支持的浏览器15.1.4 Windows Applications的录制和运行设置15.1.5 设置IE的“Enable Tabbed Browsering”选项15.1.6 使用Object属性访问DOM对象15.1.7 使用Browser对象控制浏览器的导航15.2 对各类Web对象的测试15.2.1 Page对象的测试15.2.2 Frame对象的测试15.2.3 Image对象的测试15.2.4 Link对象的测试15.2.5 WebButton对象的测试15.2.6 WebCheckBox对象的测试15.2.7 WebEdit对象的测试15.2.8 WebFile对象的测试15.2.9 WebList对象的测试15.2.10 WebRadioGroup对象的测试15.2.11 WebTable对象的测试15.2.12 WebXML对象的测试15.2.13 WebElement对象的测试第4篇 QTP高级技术篇第16章 QTP的插件技术16.1 QTP插件简介16.1.1 查看插件安装和加载情况16.1.2 插件分离的好处16.2 内建插件与外部插件16.2.1 内建插件16.2.2 外部插件16.2.3 插件的安装16.3 插件加载与插件管理16.3.1 QTP的插件加载过程分析16.3.2 关联QTP插件与测试脚本16.3.3 插件关联管理16.3.4 通过编程方式启动QTP并加载插件16.3.5 插件与检查点类型的关系第17章 使用QTP的.NET插件测试.NET平台软件17.1 QTP的.NET插件17.1.1 .NET插件安装与设置17.1.2 .NET Windows Forms Spy的使用17.1.3 利用.NET Windows Forms Spy来分析.NET控件17.2 测试.NET Windows Forms控件17.2.1 QTP支持的.NET Windows Forms控件17.2.2 通过Object属性来获取对象的内部属性17.2.3 通过Object属性访问并执行控件方法17.2.4 查看Object属性的两种方法17.3 测试WPF控件17.3.1 加载WPF插件17.3.2 QTP支持的WPF控件17.3.3 访问WPF控件的内部属性和方法17.4 测试.NET Web Forms控件17.4.1 QTP支持的.NET Web Forms控件17.4.2 测试.NET Web Forms的程序的前提条件17.4.3 利用Object属性来增强.NET Web Forms程序的测试第18章 QTP的.NET插件扩展技术及其使用18.1 QTP的.NET插件提供的扩展模块18.1.1 .NET插件的扩展模块机制介绍18.1.2 使用.NET Windows Forms Spy来协助开发扩展性18.2 使用C#对QTP的.NET插件进行扩展18.2.1 安装Custom Server模板18.2.2 建立.NET控件的测试扩展项目18.2.3 实现控件录制逻辑18.2.4 注册TrackBar控件的事件处理器18.2.5 实现控件的运行逻辑18.2.6 对QTP进行配置18.2.7 扩展项目的运行第19章 QTP的自动化对象模型及其使用19.1 QTP自动化对象模型简介19.1.1 什么时候使用自动化对象模型库19.1.2 选择开发语言和环境19.1.3 对象模型库基本元素19.2 在C#中使用QTP自动化对象模型19.2.1 引用对象库19.2.2 在C#中调用QTP对象模型库19.3 常用的自动化对象模型方法介绍19.3.1 在C#中启动QTP并加载指定插件19.3.2 在VBScript脚本中设置QTP选项19.3.3 导出QTP选项设置到VBScript脚本19.3.4 在VBScript脚本中设置QTP的环境变量19.3.5 在VBScript脚本中设置测试运行选项19.3.6 导出QTP测试设置到VBScript脚本中第20章 使用QTP开发一个猴子测试工具20.1 猴子测试20.1.1 猴子测试简介20.1.2 笨猴子与聪明猴子20.1.3 什么时候使用猴子测试20.2 使用QTP设计一个笨猴子20.2.1 用QTP实现笨猴子的基本要素20.2.2 使用Randomize函数产生随机数20.2.3 使用RandomNumber对象获取随机数20.2.4 通过WMI对象获取屏幕高度和宽度20.2.5 利用DotNetFactory获取屏幕高度和宽度20.2.6 让猴子控制鼠标和键盘20.2.7 调用C#代码中封装的Windows API函数20.2.8 输入随机字符串20.2.9 记录测试信息20.2.10 截屏20.2.11 记录性能信息20.2.12 基本的猴子测试工具20.2.13 猴子测试工具的改进点第21章 使用QTP测试Web Services21.1 Web Services插件介绍21.1.1 什么是Web Services21.1.2 Web Services插件的帮助文档21.2 使用Web Services插件测试Web Services21.2.1 Web Service测试向导的使用21.2.2 运行Web Service测试21.2.3 修改Web Service测试脚本中的检查点21.2.4 参数化Web服务的输入21.2.5 在对象库中添加Web Service测试对象21.2.6 检查WSDL是否满足WS-I标准21.2.7 使用ValidateWSDL方法检查WSDL第22章 如何编写高质量的QTP测试脚本22.1 QTP测试脚本编码规范22.1.1 常量命名规范22.1.2 变量命名规范22.1.3 对象命名规范22.1.4 代码注释规范22.1.5 代码风格22.2 通过管理对象库来提高代码的可读性22.2.1 直接录制的测试脚本的问题22.2.2 通过修改命名来达到更加易读的效果22.2.3 缩减代码行长度的方法22.2.4 以中文命名测试对象

章节摘录

  第1篇 自動化測試基礎篇  第1章 軟件測試基礎  軟件測試是軟件質量保證的重要手段,通過軟件測試發現軟件缺陷,從而修改缺陷,提高軟件的質量水平。本章介紹軟件測試的基本知識,包括軟件缺陷與軟件測試的關系,軟件質量與軟件測試的關系,以及軟件開發與軟件測試的關系。  本章內容也是軟件自動化測試的基礎知識。  1.1 軟件缺陷與軟件測試  在軟件測試領域,至今為止,還沒有一種有效的缺陷檢測機制,可以完全發現所有的缺陷。因為軟件缺陷與硬件缺陷存在很多不同之處。  1.1.1 軟件缺陷與硬件缺陷的異同  軟件缺陷與硬件缺陷一樣,會對產品的使用方造成困擾。但是軟件缺陷在一般情況下,不會對用戶造成直接的人身傷害,所以很多人沒有意識到軟件缺陷的危害性和嚴重性。然而,在一些依賴軟件進行業務處理的領域,軟件缺陷可能造成重大的經濟損失,甚至危及人身安全,例如,2007年4月,某個軟件缺陷導致某地鐵系統的列車火災,軟件未能檢測和防止剩余動力在設備中的使用,導致列車過熱而起火。  美國標準和技術研究機構(National Institute of Standards and Technology)在2002年公布的一項關于軟件缺陷引起的經濟損失的報告中的數據表明︰由于軟件缺陷造成的美國經濟損失高達595億美元。  因此,軟件缺陷與硬件缺陷一樣,可能會對用戶造成重大的損失,人們需要像對待硬件缺陷一樣重視軟件缺陷。很多硬件缺陷的出錯模式是可以預見的,而軟件缺陷的可預見性則沒有那麼強。軟件缺陷的一個重要特點是它的隱蔽性,由于軟件的復雜度高、狀態空間廣闊,因此,要覆蓋軟件所有可能的行為幾乎是不可能的。  1.1.2 如何通過軟件測試發現軟件缺陷  為了解決軟件缺陷帶來的困擾,人們仍然在不斷地尋找有效發現軟件錯誤的方法,手工測試仍然是主要的查找錯誤的方式,自動化測試能部分地解決覆蓋面的問題和測試效率的問題,但是不能從根本上解決問題。  不能單單靠軟件測試來保證軟件不出錯,軟件測試僅僅是發現軟件缺陷的一種手段而已。在軟件測試人員的角色出現之前,是由開發人員來負責缺陷控制的,而開發人員往往停留在“調試”階段的測試水平,在代碼調試通過後,往往不會花太多專門的時問來發現缺陷。而且,開發人員一般不習慣于對自己的代碼進行批判性的檢查,很多時候,對自己編寫的代碼過于自信,因此,很多缺陷就留待用戶來發現了。  由于軟件測試是比較直接的發現軟件缺陷的手段,因此也就成為了軟件缺陷控制的主要手段。測試人員通過研究軟件產品的需求,以及用戶的實際業務場景,設計出各種測試用例,通過執行測試用例,判斷被測試的應用程序是否滿足用戶需求。

媒体关注与评论

  本书结合工具、实例代码充分深入地讲解自动化测试,填补了国内自动化功能测试方面以及QTP方面书籍的空白。  51Testing软件测试培训高级讲师  朴春龙  本书详细地介绍了软件自动化测试工具QTP——对于自动化测试工具理论和实践的初学者,这本书是个福音!读完本书之后,你对测试工具QTP会有非常全面的了解。它揭开了QTP神秘的面纱。  中国雅虎 资深软件测试工程师  李丽君  本书结合实例,对QTP的基本功能进行了系统化的讲解,对学习QTP的测试人员,是一本不错的入门级教程。  快乐米音乐网 测试总监  李永红

图书封面




    QTP自動化測試實踐下載



用户评论 (总计0条)

 
 

类似《QTP自動化測試實踐》的图书资源

 

計算機與互聯網 PDF免费下载,軟件工程及軟件方法學PDF免费下载。 计算机教程网 

计算机教程网 @ 2017