Mercury QuickTest Pro(QTP)典型应用之Capstone学生贷款系统

2007-12-18 11:09:32【作者】 仇邾宇 【进入论坛】
本文关键字

 主要内容:使用QTP对逐步更新的Capstone学生贷款系统进行自动化测试和回归测试,提高了测试的效率、保证了系统的质量。

First Marblehead (FMD)

First Marblehead成立于1991年,总部在波士顿的马萨诸塞州,在美国为私营、非政府、教育提供外包服务。截至2006630 First Marblehead已有员工超过1000多人。公司通过提供一整套的学生贷款方案服务包,来尽量满足私有教育贷款日益增长的需求。公司并不像贷款者、担保人或贷款服务方那样服务,而是通过处理和保障客户贷款的服务来收取费用。公司为70%的大型学生贷款联合担保商提供贷款服务。我们的客户包括JPMorgan ChaseBank of AmericaHSBCWachoviaPNC。公司还为CVSAAAGeneral Motors等公司提供教育金融项目。

2006财政年中,FMD提供了大约34亿美元的贷款用于资助超过5600所学校的学生,从12年制私有中学的学生到大学生、研究生以及进行继续教育的学生。FMD还直接与教育机构合作,为学校的学生设计了多种贷款方案。公司已为50多家教育机构设计了贷款方案,包括斯坦福大学、USC大学、维吉尼亚大学、卡内基梅隆大学和耶鲁大学。

2001年,FMD获得了运营资产,其中包括TERI公司的一个贷款原因和执行情况数据库,同时其附属公司First Marblehead Education ResourceFMER)也相继成立。FMER是一家财务公司,专门从事和开发多品种的金融项目和资产安全方案。TERI是一家历史悠久的大型私人贷款担保商,是一个非营利性的实体,专门从事教育信息化和金融,已为学生和家庭服务了超过15年。截至20066月,其专有数据库中的历史担保贷款执行数据已超过了130亿。FMD已为31种证券交易提供了多层次的咨询和其他服务。 

Darwin Partners (DP)

 Darwin Partners是一家1987年成立的IT企业,它为1000多家公司提供IT服务,主要包括金融服务,医疗中心,高科技,保险以及电信。该公司在全球一共有70000个顾问随时为客户提供支持,他们80%的客户都是财富杂志上排名前1000位的公司。

 20064月,Darwin Partners收购了中国主导IT开发公司(Suzsoft),成为美国领先的IT服务商。Darwin Partners20年领先的经验,为美国和欧洲主要的财政服务、保险、医疗、软件和电信公司提供了IT策略、IT人员和技术咨询服务。Suzsoft具有6年的领先经验,为美国、亚洲和欧洲的主要软件、财政服务,以及在上海、苏州、大连、香港的高技术生产客户服务。新公司DarwinSuzsoftDarwin Partners在美国的经验与Suzsoft在中国和亚洲验证的能力相结合。

系统概述及测试需求

 该项目是对美国最大的学生贷款系统进行测试,系统是由美国First Marblehead公司的隶属公司First Marblehead Education Resource开发的,由于学生贷款需求的日益增长,该公司主要原有的贷款系统已经无法满足现实需要,FMER根据新的需求对旧系统进行全面升级,对原有的功能进行改进,增加了新的业务功能。FMER委任其合作伙伴Darwin公司进行测试。受Darwin公司之邀,苏州市软件评测中心有限公司(以下简称评测中心)于20064月委派多名有经验的QTP自动化测试工程师进行测试。

 整个测试项目需要建立起一个自动化测试框架;创建QTP脚本库中使用的用户自定义函数;以功能为核心开发主要的QTP脚本;创建用户自定义函数来识别和操作QTP无法识别的ActiveX控件;调试自动化测试框架,分析测试结果,从而设置和优化该框架;创建自动化测试框架的设计文档和用户手册;对QTP脚本进行调试及加强。

应用体系

 学生贷款系统有很多个子系统组成,如:系统最前端的学生贷款申请网站;内部的贷款记录审核、批准系统;出错记录查询系统;各机构贷款支付查询系统;电子签名系统等。其中多数都是B/S架构的,只有内部的贷款记录审核、批准系统是C/S架构的,初部分旧数据存储于AS/400服务器上外,大部分被测系统基于Windows操作系统,以SQL Server 2000为数据库,C/S架构的系统采用VB语言开发

主要工作

 在为期六个月的外包测试期间,评测中心的测试工程师主要对以下四个系统进行了测试:

 Capstone:

 设计自动化测试框架:使用QTP编写测试的主程序,由它读取测试用例模板中的信息,按照读到的工作流及对应的对象参数一步一步执行,并将程序返回的结果写入模板中指定的位置。

 自动化测试用例模板是作为QTP脚本执行时的源文件来使用的,它是一个Excel文件。源文件反映了测试的工作流,是由不同的用户自定义函数构成的,手工测试人员可以将其作为手工测试用例来使用,对于QTP脚本来说,可以作为自动化关键字和数据驱动源文件。

 对于QTP不能识别的对象(如:用户自定义对象、ActiveX控件),通过创建用户自定义函数来识别和操作。创建一个外部的脚本库文件,将其包含到QTP中,QTP通过调用库中的方法函数对这些对象进行操作。

 设计开发自动化测试套件,一个VB应用程序,用来驱动QTP脚本的运行。测试运行人员可以不了解QTP,直接使用该套件,选择相应的脚本和自动化测试用例运行测试。

 ScholarNet:

 使用QTP9.0编写测试脚本:按照细化后的功能点创建脚本库,根据业务流程调用脚本库中的脚本创建测试。

 在脚本编写过程中解决了以下问题:

 QTP处理PDF文件问题:将查询出来的报表记录生成PDF文件,然后验证该文件中的记录与要查询的记录内容是否一致。该问题最后通过将PDF中的表格导出到Excel中,将数据库中相应的记录,按相同的格式写入另一Excel文件中,然后比较两个Excel文件来实现。

 QTP检查网页中的文字颜色为指定颜色的问题:文字内容是根据搜索条件的不同动态改变的,该问题最后使用了曲线求解的方法,用DOMDocument Object Model)编程技术来实现。

 WFE (web front end):

 根据手工测试用例,设计自动化测试数据。

 将QTP8.2的脚本升级成QTP9.0的,更新脚本库和对象仓库,调试使各脚本均能正确运行。

 CDA Disbursements:

 QTP9.0脚本维护:调试已有的QTP脚本,改正发现的错误,增加遗漏功能的测试脚本,并更新脚本库和对象仓库。

 对更新后的脚本进行冒烟测试。

结果

此次外包测试项目的合作相当成功,评测中心的测试工程师圆满完成了各项测试任务,并得到了Darwin公司QA Manager的高度好评。