您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > 惠普测试管理及模块自动化测试
惠普测试管理及模块自动化测试主题•惠普软件测试介绍–测试介入点–自动化测试的重要性–惠普测试服务•惠普软件测试的核心竞争力–惠普灵活多变的测试流程–Mercury测试工具在惠普的应用–惠普高效的自动化测试技术-ATA2020年1月31日星期五232020年1月31日星期五惠普软件测试介绍测试的介入点2020年1月31日星期五4项目持续时间完成率延迟测试开发缺陷修复代价1x10x100x测试介入得越早,成本越低2020年1月31日星期五5项目持续时间100%50%0%完成比率确保软件质量缩短软件开发周期完成率缺陷的代价RequirementsCodingDeliveryTimeCosttoFind&FixBugs2020年1月31日星期五6错误被发现和纠正的越早,为修复而付出的代价却显得越小自动化测试的重要性•自动化测试是一门把手公测试转化为让计算机来执行测试并发现问题的艺术。•我们在测试工作中经常面对的困难:–需求时常变更.–测试时间不够.–回归测试很短,但需要把所有功能都重新验证.–不同的测试工程师测试角度也不同.•在惠普,自动化测试的意义在于:“HighQualitytomarket.LowTimetomarket”2020年1月31日星期五7什么情况下需要引入自动化测试?•用户界面多而复杂,并且有很多类似界面•程序里包括了许多复杂的循环或嵌套•手动测试需要大量的时间•手动测试需要大量的人员投入e.g.并发测试•需要使用大量的测试数据•需要经常进行回归测试•数据变化2020年1月31日星期五8何时引入自动化测试?•在何时进行自动化的问题上,存在十分困难的权衡。•通常对测试进行自动化并加以文档记录的时间可能是创建并运行它的10倍。•越早越好吗?–越早自动化,后期自动化的范围就越大,可以提高测试效率。•越早越不好吗?–花费大量时间编写自动化测试工具或脚本,减少了早期的可用测试时间,推迟了发现和纠正那些错误的时间–程序会发生很大变化,会造成自动化脚本需要跟随进行大量的修改才能继续使用•惠普的建议–不要范围过大以至于推迟测试进度–自动化测试必要性评估(投入产出比)2020年1月31日星期五9哪些可以采用自动化测试策略?•哪些地方需要您花费大量的时间和人力进行手工测试,这是您采用自动化测试策略的切入点•自动化测试所能涉及到的地方–功能测试–回归测试–用户界面测试–冒烟测试/版本验收测试BVT–负载测试/压力测试–性能测试–代码覆盖率验证–内存泄漏2020年1月31日星期五10测试咨询、管理及培训服务测试咨询及建议测试计划及策略指定测试管理及协调测试工具及流程培训应用开发测试服务单元测试集成测试系统测试用户验收测试配置管理及报告编译、发布及变更控制自动化功能回归测试服务冒烟测试自动化测试脚本开发自动化测试脚本维护自动化测试脚本运行及报告定制测试组件应用质量保障服务项目健康检查及审计项目数据收集及基准缺陷预防及原因分析相关培训(CMM、CMMI、ITSM、及HPSigmaPlus)非功能测试服务性能测试及基准性能调优(操作系统,数据库、中间件及源代码层面)性能监控压力测试及负载测试安全测试可用性测试易用性测试112020年1月31日星期五测试服务范围成功案例:HPSAP测试项目中自动化带来的成本收益手工测试一年的成本花费每个版本的测试成本开发版本/年全年总成本*$256,9604$1,027,840采用惠普自动化测试一年的成本加上每个版本维护的费用每个版本的测试成本开发版本/年全年总成本**$23,04012$276,480一次性知识传递的费用***$159,920一年内惠普测试部门为该客户节约的成本$591,440(58%oforiginalcost)•Notes:–*每个版本的手工测试需要100%投入的28个工程师和40%投入的43个业务人员花费11天完成所有测试工作。–**每月只需要投入6名惠普测试人员进行自动化脚本的编写、维护和执行–***由三名客户业务人员和10名惠普测试人员花费60天完成知识传递的工作以掌握项目的所有业务逻辑122020年1月31日星期五成功案例:HPSAP测试项目在测试执行过程中的持续改进Unitscriptsexecutiontime0:00:000:07:120:14:240:21:360:28:480:36:000:43:120:50:242005/022005/032005/042005/052005/062005/072005/082005/092005/102005/112005/12MonthHour(s)UnitscriptsexecutiontimeNo.ofscripts0501001502002503003502005/022005/032005/042005/052005/062005/072005/082005/092005/102005/112005/12MonthNo.ofscriptsNo.ofpeople0246810122005/022005/032005/042005/052005/062005/072005/082005/092005/102005/112005/12MonthNo.ofpeople132020年1月31日星期五FromFeb.2005toDec.2005•单元测试时间缩减90%•测试范围扩大92%•测试团队人员投入减少50%142020年1月31日星期五惠普软件测试的核心竞争力瀑布模型2020年1月31日星期五15V模型2020年1月31日星期五16增量开发–迭代模型2020年1月31日星期五17惠普灵活多变的测试流程•启动阶段:根据不同的项目,使用最适合的模型–内部的项目管理系统来为各个项目选择合适的开发测试流程–大量的历史数据和项目信息•开发阶段:选用合适的编译/构建流程,开发测试工具•测试阶段:合理运用测试工具和方法–测试工具---测试对象映射表–惠普自动化测试技术–实时监控•维护阶段:灵活地应对变更–变更控制系统–惠普自动化体系确保下的回归测试2020年1月31日星期五18惠普测试工具概览•Mercury测试工具–统一的测试管理工具:QualityCentre–功能测试自动化工具:QuickTestPro–性能测试自动化工具:LoadRunner•HPTCoE自主开发的测试工具–ATA(AutomationTestingAccelerator)特点:集中整合、高效、灵活、易于管理。提供了基于模块的资源管理方式,使得整个自动化测试更灵活,更方便,更有效。高级版本中还填补了MercuryQCTestCase与QTP自动化脚本之间的空白。2020年1月31日星期五19202020年1月31日星期五Mercury测试工具在惠普的应用Mercury测试工具–功能测试自动化工具:QuickTestPro•特点:高效的功能自动化工具,可以把所有操作录制下来并进行回放,能够用自动化的方式模拟用户的手工测试,并能大大提高测试效率–性能测试自动化工具:LoadRunner•特点:基于Web应用程序的性能测试自动化工具,可以模拟大数据量的情况,并能重复执行测试用例,还能模拟多用户并发下的测试。–统一的测试管理工具:QualityCentre•特点:可以统一并有效地管理需求文档、测试用例、测试执行情况和缺陷,并能提供专业的进度和趋势报告。QC更能和QTP进行整合,实现手动和自动测试的有机结合。2020年1月31日星期五21HPTCOE自主开发的测试工具ATA(AutomationTestingAccelerator)2020年1月31日星期五22实现方式:•用例分解成模块•模块对应脚本可自动生成•模块的组合管理特点:集中整合、高效、灵活、易于管理。提供了基于模块的资源管理方式,使得整个自动化测试更灵活,更方便,更有效。高级版本中还填补了MercuryQCTestCase与QTP自动化脚本之间的空白。ComponentBasedScriptingModel基于模块的自动化脚本模型LoginSelectproductConfirmtobuyPaybycreditcardInputcreditcardinfo.LogoutLoginSelectproductConfirmtobuyCashonDeliveryLogoutLoginSelectproductConfirmtobuyPaybycreditcardInputcreditcardinfo.LogoutLoginSelectproductConfirmtobuyCashonDeliveryLogout·Login·Selectproduct·Confirmtobuy·Paybycreditcard·Inputcreditcardinfo·Logout·Login·Selectproduct·Confirmtobuy·Cashondelivery·LogoutDecomposeCompose2020年1月31日星期五23ReusableBusinessComponents可重用的测试模块LoginSelectproductConfirmtobuyPaybycreditcardInputcreditcardinfo.LogoutLoginSelectproductConfirmtobuyCashonDeliveryLogoutReusableComponentsNon-ReusableComponents•测试用例数量:–2•可重用测试模块的数量:–4•不可重用测试模块的数量:–3•所要构造的测试模块:–4+3=7•总测试模块数量:–11•重用率:–(11-3)/11=64%242020年1月31日星期五ATA简介主界面如下图所示:2020年1月31日星期五25HPATA:测试用例(testcase)管理2020年1月31日星期五26可以通过ATA跟踪各个testcase的状态,并且通过ATA分配每个testcase的自动化脚本开发工作,随时跟踪每个testcase开发进度。高级版本还可从MercuryQC下载相应的TestCase到本地ATA数据库,能够追踪测试中的问题或者已发现的bug,同时也可以将以上信息与QC上相关资料进行同步。而且同步是自动进行的。HPATA:自动化测试模块的管理2020年1月31日星期五27ATA带有自动文档生成功能,可以自动生成对所有模块的说明文档;同时,ATA允许用户进行周期性的数据统计,用丰富的图表来表示当前项目的各项状态。ATA将测试中所用到的模块存放在数据库中,(模块类型可以是VBScriptFunction,JavaScriptFunction或者是QTPReusableAction,ATA将自动对前两种模块做语法检查)并且按照多种分类方式进行分类,自动化测试脚本开发人员可以直接在ATA上进行模块的创建,编辑或者删除。ATA可以自动将保存在数据库中的模块编辑成模块类库文件(.vbs或者.js)提供给QTP,以便用户调用当中的各个模块。HPATA:实现testcase和测试模块的映射关系2020年1月31日星期五28ATA可以在TestCase和测试模块数据库建立联系。测试人员只需要从模块数据库中选取相应的模块插入到TestCase相应的位置,即可自动生成QTP测试脚本。这种映射关系也会被自动保存在数据库中,可以随时对它进行更改,同时也方便了对每个模块的重用率做统计。在建立这种映射关系之前,ATA可以从QC上下载相应的TestCase,也可以从一个Excel文件中导入。而最终产成的映射关系也可以作为Excel文档导出进行保存。ATA这种TestCase与测试模块映射的工作模式打破了传统的录制/回放为主的工作模式,极大的提高了测试的效率和准确性。手动测试,传统自动化测试与HPATA之间的比较手动测试传统自动化测试HPATA人员配置高中低测试效率低无法对海量数据进行测试,测试数据越多,效率越低慢中采用录制/回放,但大量的脚本录制同样会影响整个测试的效率高采用测试用例与
本文标题:惠普测试管理及模块自动化测试
链接地址:https://www.777doc.com/doc-3403305 .html