2023年-软件测试自动化和软件测试工具.docx
《2023年-软件测试自动化和软件测试工具.docx》由会员分享,可在线阅读,更多相关《2023年-软件测试自动化和软件测试工具.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件测试自动化与软件测试工具目录一、软件自动化测试基础1、1软件自动化测试的产生随着计算机日益广泛的应用,计算机软件越来越庞大和复杂,软件测试的工作量也越来越大。 随着人们对软件测试工作的重视,大量的软件测试自动化工具不断涌现出来,自动化测试能够满 足软件公司想在最短的进度内充分测试其软件的需求,一些软件公司在这方面的投入,会对整个 开发工作的质量、成本和周期带来非常明显的效果。1、2软件自动化测试的概念软件测试自动化就是通过测试工具或其他手段,按照测试工程师的预定计划对软件产品进行自动 的测试,它是软件测试的一个重要组成部分,能够完成许多手工无法完成或者难以实现的一些测 试工作。正确、合理地
2、实施自动化测试,能够快速、全面地对软件进行测试,从而提高软件质量、 节省经费、缩短产品发布周期。自动化测试能够替代大量手工测试工作,避免重复测试,同时,它还能够完成大量手工无法完成 的测试工作,如并发用户测试、大数据量测试、长时间运行可靠性测试等。1、3当软件开发过程中具有下列情况时首先需要考虑引入自动化测试: 非常重要的测试 涉及范围很广的测试 对主要功能的测试 容易自动化的测试 很快有回报的测试 运行最频繁的测试二、自动化测试的作用和优势使用测试工具的目的就是要提高软件测试的效率和软件测试的质量。通常,自动化测试的好处 有: 产生可靠的系统; 改进测试工作质量;减少测试工作量并加快测试进度
3、。2、1、1产生可靠的系统测试工作的主要目标一是找出缺陷,从而减少应用中的错误;另一个是确保系统的性能满足用户 的期望。为了有效地支持这些目标,在开发生存周期的需求定义阶段,当开发和细化需求时则应 着手测试工作。使用自动化测试可改进所有的测试领域,包括测试程序开发、测试执行,测试结 果分析、故障状况和报告生成。它还支持所有的测试阶段,其中包括单元测试、集成测试、系统 测试、验收测试与回归测试等。通过使用自动化测试可获得的效果可归纳如下。(1)需求定义的改进(2)性能测试的改进(3)负载/压力测试的改进(4)高质量测量与测试最佳化(5)改进与开发组人员之间的关系(6)改进系统开发生存周期2、1、
4、2改进测试工作质量通过使用自动化测试工具,可增加测试的深度与广度,改进测试工作质量。其具体好处可归纳如 下。(1)改进多平台兼容性测试(2)改进软件兼容性测试(3)改进普通测试执行(4)使测试集中于高级测试问题(5)执行手工测试无法完成的测试(6)重现软件缺陷的能力(7)测试无需用户干预2、1、3.减少测试工作量并加快测试进度善于使用测试工具来进行测试,其节省时间并加快测试工作进度是毋庸置疑的,这也是自动化测 试的主要优点。表7-1列出了采用手工和自动化测试方式完成各测试步骤所需工作量的基准对比结果。该测试涉 及1750个测试程序和700个错误。表7-1中的数字反映出通过测试自动化,测试工作总
5、量减少 75%0表7-1手工测试与自动化测试的情况比较测试步骤手工测试 (小时)自动测试 (小时)改进百分率 (使用工具)测试计划制定3240-25%测试程序开发26211755%测试执行4662395%测试结果分析1175850%错误状态/纠正监视1172380%报告生成961683%2、1、4友情提醒软件自动化测试是软件测试技术的一个重要的组成部分,引入自动化测试可以提高软件质量,节 省经费,缩短产品发布周期。然而,测试工具本身的优势并不意味着使用测试工具就能成功,关键还是在于使用工具的人。很 多刚拥有测试工具的人,经常过分夸大工具的功效,并投入太高的期望。但是,工具只是提供了解决问题的一
6、种手段而已。成功的测试自动化需有以下两个关键的因素。一个被很好理解的并且稳定的应用行为一个专注的、有着丰富技能的测试组,并且被分配了足够的时间和资源三、自动化测试工具3、1软件测试工具分类根据测试方法的不同,自动化测试工具可以分为白盒测试工具、黑盒测试工具和测试管理工具。 这些工具主要是 Mercury Interactive (MI)、Segue IBM/Rational Compuware 和 Empirix 等公 司的产品,而MI公司的产品占了主流。这些工具和软件开发过程中相关活动的关系如图1所示。 图1测试工具与开发过程关系图3、1、1白盒测试工具白盒测试工具一般是针对代码进行测试,测
7、试中发现的缺陷可以定位到代码级。根据测试工具的 工作原理的不同,白盒测试工具又可以分为静态测试工具和动态测试工具。静态测试工具静态测试就是在不执行程序的情况下分析软件的特性。因此,静态测试工具一般是对代码进行语 法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系 图等。静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接、生成可 执行文件。静态测试工具的代表有Telelogic公司的Logiscope软件、PR公司的PRQA软件。动态测试工具动态测试直接执行被测程序以提供测试活动。因此,动态测试工具需要实际运行被测系统,并设 置断点,向代码生
8、成的可执行文件中插入一些监测代码,掌握断点这一时刻程序运行数据。动态测试工具的代表有Compuware公司的DevPartner软件、Rational公司的Purify软件。常见的白盒测试工具,如表2、表3所示。表2 Parasoft白盒测试工具集工具名支持语言环境简介JtestJava代码分析和动态类、组件测试JcontractJava实时性能监控以及分析优化C+ TestC, C+代码分析和动态测试CodeWizardC, C+代码静态分析Insure+C, C+实时性能监控以及分析优化.test.Net代码分析和动态测试表3 Compuware白盒测试工具集工具名支持语言环境简介Boun
9、dsCheckerC+, DelphiAPI和OLE错误检查、指针和泄露错误检查、内存 错误检查TrueTimeC+, Java, Visual Basic代码运行效率检查、组件性能的分析FailSafeVisual Basic自动错误处理和恢复系统JcheckMS Visual J+图形化的线程和事件分析工具TureCoverageC+, Java, Visual Basic函数调用次数、所占比率统计以及稳定性跟踪SmartCheckVisual Basic函数调用次数、所占比率统计以及稳定性跟踪CodeReviewVisual Basic自动源代码分析工具3、1、2黑盒测试工具黑盒测试工具
10、适用于系统功能测试和性能测试,包括功能测试工具、负载测试工具、性能测试工 具等。黑盒测试工具的一般原理是利用脚本的录制(Record) /回放(Playback),模拟用户的 操作,然后将被测系统的输出记录下来同预先给定的标准结果比较。黑盒测试工具可以大大减轻 黑盒测试的工作量,在迭代开发的过程中,能够很好地进行HI归测试。黑盒测试工具的代表有 Rational公司的TeamTest、Compuware公司的QACenter。常见的黑盒功能测试工具,如表4所Zj O表4常见黑盒功能测试工具工具名公司名官方站点WinRunnerMercury InteractiveAstra Quicktest
11、Mercury InteractiveLoadRunnerMercury InteractiveRobotIBM/RationalFeamJestIBM/RationalQARunCompuwareQALoadCompuwareSilkTestSegue SoftwareSilkPerformerSegue Softwaree-TestEmpirixe-LoadEmpirixWASMSWebLoadRadviewhttp:/OpenSTAOpenSTAhttp:/3、1、3测试管理工具测试管理工具用于对测试进行管理。一般而言,测试管理工具负责对测试计划、测试用例、测试 实施进行管理、对产品缺陷
12、跟踪管理、产品特性管理等。测试管理工具的代表有Rational公司的TeamManager Compuware公司的TrackRecord Mercury Interactive 公司的 TestDirector 等软件。除此之外,还有专用于性能测试的工具包括有:Radview公司的WebLoad; Microsoft公司的 WebStress等工具;针对数据库测试的TestBytes;对应用性能进行优化的EcoScope等工具。3、2自动化测试工具一览3、2、1 Rational RobotRational Robot可以对在各种独立开发环境(IDE)中开发的应用程序,创建、修改并执行功能测
13、 试、分布式功能测试、回归测试以及整合测试,记录并回放能识别业务应用程序对象的测试脚本, 可以快速、有效地跟踪、报告与质量保证测试相关的所有信息,并将这些信息绘制成图表。Robot 的回归测试与Purify结合使用完成可靠性测试,与PureCoverage结合使用完成代码覆盖计算, 与Rational Quantify结合使用完成应用程序性能测试。Rational Robot是一个面向对象的软件测试工具,主要针对Web、ERP和C/S进行功能自动化测 试。可以降低在功能测试上的人力和物力的投入成本和风险,测试包括可见的和不可见的对象。 Rational Robot可以开发运用三种测试脚本:用于
14、功能测试的GUI脚本、用于性能测试的VU以 及VB脚本。Rational Robot具有以下功能和作用:执行完整的功能测试。记录和回放遍历应用程序的脚本以及测试在查证点处的对象状态。 执行完整的性能测试。通过Rational Robot与Rational Test Manager的协作可以记录和回放 脚本,这些脚本帮助断定多客户系统在不同负载情况下是否能够按照用户定义的标准运行。 在SQA Basic. VB、VU多种环境下创建并编辑脚本。Rational Robot编辑器提供有色代码命 令,并在集成脚本开发阶段提供键盘帮助。 测试微软 IDE 环境下 VB、HTML、Java、Oracle
15、Forms PowerBuilder Delphi 开发的应用 程序以及用户界面上看不见的那些对象。 脚本FI放阶段收集应用程序诊断信息。Rational Robot与Rational Purify Quantify PureCoverage 集成,可以通过诊断工具回放脚本,并在日志中查看结果。 同Rational其他组件或产品集成使用Robot3、2、2 WinRunnerMercury Interactive公司的WinRunner是一种企业级的用于检验应用程序是否如期运行的功能性 测试工具。通过自动捕获,检测和模拟用户交互的操作,WinRunner能够辨认缺陷并且确保那些 跨越多个应用程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 软件 测试 自动化 工具
限制150内