首页 >> 通信新闻 >> 滚动新闻 >> 正文
 
锐行服务助运营商走出测试困境
http://www.cww.net.cn   2010年3月8日 12:38    通信世界周刊    
作 者:神州数码信息服务集团集成服务战略本部 刘培臣 胡经树

    自动化测试的困境

    对应用系统进行大批量的自动化回归测试是当前很多运营商的实际需求。现实中,自动化测试项目有着各种各样的难题。对于刚开始做自动化测试的技术人员来说,首先可能遇到的就是自动化测试工具的问题,总结当前市场上的自动化测试工具,普遍存在如下困境。

    一、常见工具提供了对最广泛应用系统环境的支持,但是不针对实际被测应用系统定制任何内容,字符终端、图形界面的自定义控件支持得很不好。

    二、一般商业工具直接支持的自动化回归测试方法只是录制回放技术,其他技术都需要测试人员通过编码实现。编写脚本比较花费时间,仅使用录制回放技术来完成自动化回归测试也是不可能的。

    三、虽然有的工具号称支持数据驱动技术和关键字技术,但是实际上只提供了对这两种技术的底层支持。而各种商业自动化回归测试工具有一个共同点,那就是脚本和数据、验证条件、同步条件是捆绑在一起的,而且脚本没有经过封装,是非结构化的,不可复用。

    四、一般商业工具的数据都与测试用例关联在一起,而不是与业务流关联,不能满足应用系统的测试要求,需要进一步增强。而且现有工具缺少自动调度机制,脚本执行过程中出错即终止,影响后续脚本的运行。

    神州数码信息服务集团集成服务战略本部长期致力于电信、金融等行业的软件质量管理,在自动化测试服务方面积累了丰富的经验,并形成了以“锐行服务”为品牌、完整成熟的系列解决方案,在安徽移动、山西移动、湖北移动等多家电信运营商,以及建设银行、工商银行、浦发银行等金融行业客户的实际项目中得到了大量应用推广,极大提高了软件测试的工作效率。

    锐行服务自动化回归测试系统

    神州数码信息服务集团集成服务战略本部自主研发的“锐行服务”自动化回归测试系统,能够较好地解决上述工具方面的难题。该系统在通用测试工具上构建了一个自动回归测试框架,见图1。

    使用锐行服务自动回归测试框架实现自动回归测试的基本过程如下。

    1.业务人员通过测试用例设计器完成测试用例的设计工作,指定测试用例每个步骤操作的对象、数据和参数,产生的测试用例定义保存在数据库中;在完成测试用例设计后,通过脚本生成器产生出自动回归测试需要的脚本、产生的脚本也保存在数据库中。

    2.业务人员根据现有的测试用例,通过业务流管理器定义需要测试的业务流,并定义业务流中使用的测试用例间数据传递关系,业务流定义和数据传递关系的定义也保存在数据库中;业务人员通过数据管理器为每个业务流配置实际使用的数据,数据保存在数据库中。

    3.测试执行人员通过测试调度器启动自动回归测试过程,选择需要执行的业务流,测试调度器从数据库中读入相应业务流的定义和业务流中测试用例间的数据传递关系,解析需要执行的测试用例和测试用例执行顺序,然后顺序执行测试用例,在执行测试用例时,从数据库中读入该测试用例对应的测试脚本和需要使用的测试数据。

    4.调用自动测试工具,执行测试用例,每个测试用例执行结束后,根据读入的测试用例间的数据传递关系传递数据,并根据测试用例执行顺序调入下一个测试用例对应的脚本和数据,执行下一个测试用例,直至测试结束;测试结束后,可以通过自动测试工具产生需要的测试报告。

    链接:

    锐行服务自动化测试方案服务安徽移动

    目前安徽移动BOSS系统的自动化测试,一共通过204个测试脚本来覆盖系统中的绝大部分业务。通常情况下,从提出进行一轮自动化测试到脚本执行完成时间不超过24小时,大大解决了以前测试人员只能对于本次上线业务进行测试,而没有精力和时间去测试可能受到影响的业务的问题,同时,工具对于被测系统的支持问题、环境的管理问题,以及执行后的结果判断等诸多难题也能得到有效解决。

    环境管理。安徽移动的测试流程如图2所示。为了保证测试的准确性,自动化测试中的自动化回归和性能测试需有单独的测试环境。自动化测试环境中程序的版本是生产环境的版本加上本次上线的版本,同时测试数据每月按不同地市进行更新,自动化测试环境由自动化测试团队独立维护。这样最大程度地保证了测试环境中程序版本、数据与生产环境的一致性。

    测试脚本和测试数据的管理。目前自动化回归测试和性能测试主要对BOSS系统进行测试,测试脚本由专业测试管理工具MercuryQualityCenter管理,通过我们的自动化测试系统,调度QuickTestProfessional执行测试脚本。一般来说,在开发测试脚本时可能会在脚本的颗粒度和可维护数量之间的取舍方面产生犹豫。在开发测试脚本时我们选择了按业务划分,每个脚本覆盖一个业务,脚本通过数据驱动执行不同测试路径,即通过读取参数表中的参数来判断脚本执行,覆盖业务的不同分支。

    测试脚本的执行管理。在测试执行中主要根据系统业务来完成测试执行工作。一种情况是无严格业务流的测试脚本单独执行测试脚本。对有业务流程的概念,可以通过执行一个业务流程验证之前脚本所完成业务的正确性,同时为后面脚本的执行提供执行的数据。

    结果的分析和确认。测试执行完成后,自动化测试报告将包括风险分析报告、自动化测试报告以及缺陷报告等。之前,自动化测试工程师会先在自动化测试环境手工执行报错业务,确认自动化执行的错误是否能够手工复现,同时记录测试数据和系统输出日志,让开发人员直接复现测试的问题,从而减少分析问题和修改问题的时间。

编 辑:高娟
关键字搜索:测试  
相关新闻
每日新闻排行
企业黄页
会议活动