一种基于脚本解释工具的自动化软件测试系统技术方案

技术编号:2864420 阅读:312 留言:0更新日期:2012-04-11 18:40
本发明专利技术为一种基于脚本解释工具的自动化软件测试系统,包括测试案例库,测试记录库,测试案例处理单元,测试记录处理单元,测试案例管理单元,测试总控单元;测试总控单元通过人机界面接受用户的操作指令信息,并控制测试案例处理单元从测试案例库中读取测试案例的初始数据,经用户的编辑操作之后,保存测试案例脚本,并将其路径保存在测试案例库中;测试案例经过测试记录处理单元生成测试记录,保存在测试记录库中,并保存测试记录脚本;运行测试记录,测试记录脚本通过测试案例管理单元传送到指定测试机中的ROBOT运行;测试数据通过运行ROBOT脚本传送到各应用程序进行处理,将运行结果经测试案例管理单元保存到测试记录库。

【技术实现步骤摘要】

本专利技术涉及网络和计算机软件技术,特别涉及计算机应用软件的测试,具体的讲是一种基于脚本解释工具的自动化软件测试系统
技术介绍
软件测试是一件非常重要的工作,特别是对于金融业、工业等复杂且庞大的应用软件测试而言更是如此,因为软件的运行质量将直接影响多方的利益。然而,现有技术中的软件测试方法大多以某种脚本解释工具为基础,采用单机运行、手工操作的方法对应用软件进行测试。现有的脚本解释工具很多,Robot工具便是其中之一。Robot是Rational公司开发的用于进行功能测试和性能测试的工具。使用Rational Robot可以开发三种类型的脚本用于功能测试的GUI脚本、用于性能测试的VU和VB脚本。Robot提供了以下功能1)完成所有的功能测试。记录并回放应用完成的过程,并且通过检查点来检测监控对象的状态。2)完成所有的性能测试。结合使用Robot与TestManager来记录脚本,有助于判断一个多客户端的系统的性能是否满足既定的标准。3)使用SQABasic、VB和VU脚本运行环境来创建和编辑脚本。在脚本开发中Robot编辑器为复杂的编写提供了方便的编辑环境。4)应用于Visual Studio.NET、Visial Basic、Oracle表格、PowerBuilder、HTML和Java的开发。甚至在应用界面中不可见的对象都可以作为测试对象。5)在脚本回放过程中收集应用的诊断信息。Robot已经与RationalPutify、Quantify、PureCoverage整合起来。在诊断工具下运行脚本之后,可以在日志中查看诊断结果。Robot当中面向对象的记录技术允许仅仅通过简单地运行测试记录就可以快速产生出测试脚本。Robot使用面向对象的记录方法,通过对象内部的对象名来识别对象,而不是通过屏幕上的坐标来识别。如果对象改变了位置或文本,Robot仍然可以在回放中找到它们。Robot中的对象测试技术允许测试一个测试项目中的任何对象,包括该对象的属性和数据。不论在界面中是否可见,都可以测试标准Windows对象和IDE对象。可见Robot为用户编写的测试记录脚本提供了一个解释和执行的系统,脚本的识别和运行都是通过Robot来完成的。Robot工具虽然可以完成软件测试的工作,但是现有技术中对Robot工具的使用却十分原始,致使测试效率低下、浪费人力,其具体表现为1)不能对测试案例进行有效的管理,因此无法解决案例存储和重用的问题;2)测试在单机或者前台机运行,直接影响前台用户的其他操作;3)测试流程人工操作,大量占用人力;4)运行Robot工具的单机互不联系,无法实现测试资源的均衡管理;5)运行Robot工具的单机仅针对某一具体软件的测试而工作,因此毫无灵活性可言,更不能满足多样的业务需求。综上所述,虽然现有技术中的脚本解释工具很多,且这些脚本解释工具(如Robot工具)也能够帮助用户完成软件测试的工作,但是基于软件测试工具的自动化的、灵活性强的、兼容性好的软件测试系统目前还没有出现。
技术实现思路
本专利技术的目的在于,提供一种基于脚本解释工具的自动化软件测试系统。用以对测试案例进行有效的管理,解决案例重用的问题。测试通过后台执行,不影响前台用户的其他操作。测试流程自动化,无需人工操作。实现测试资源的均衡管理。并且使整个系统具有较强的灵活性,能满足多样的业务需求,可兼容多种协议。本专利技术的技术方案为一种基于脚本解释工具的自动化软件测试系统,其中包括,测试案例库用于存储测试案例信息、测试案例脚本;测试记录库用于存储测试记录信息、测试记录脚本;测试案例处理单元用于对测试案例的生成、删除、重用进行处理;测试记录处理单元用于对测试记录的生成、删除、复制、运行状态统计进行处理;测试案例管理单元由脚本解释工具构成,在计算机的调度和测试监控下管理测试记录运行期间的所有操作;测试总控单元用于对系统资源和硬件资源进行控制;所述的测试总控单元通过人机界面接受用户的操作指令信息,并控制所述的测试案例处理单元从所述的测试案例库中读取测试案例的初始数据,经用户的编辑操作之后,以文本形式保存测试案例脚本,并将其路径保存在测试案例库中;所述的测试案例经过所述的测试记录处理单元生成测试记录,保存在所述的测试记录库中,同时以文本的形式保存测试记录脚本;运行所述的测试记录,测试记录脚本通过所述的测试案例管理单元将测试数据传送到各应用程序进行处理,将运行结果经所述的测试案例管理单元保存到所述的测试记录库。在所述的测试案例库中,测试案例信息与测试案例脚本一一对应,并且所述的测试案例信息存储于数据库中,所述的测试案例脚本以文本的形式存放;通过对数据库中测试案例信息的管理实现对所述的测试案例脚本的管理。所述的测试案例处理单元包括删除案例模块、案例类型模块、以及案例设计器。所述的案例设计器是一个可视化案例设计模块,其通过图形界面,添加交易代码,修改交易的输入项和对应的动作,生成测试案例脚本。所述的案例设计器能够记忆用户曾经测试过的各个功能模块的输入输出数据。所述的案例设计器使用的文件包括测试案例库中的测试案例脚本;使用的表包括案例表(TC)纪录已经生成的测试案例的信息;交易输入项表(TRANSITEM)记载测试原始数据流,保存一次测试的所有输入项的名称和提示信息;案例类型表(TT)管理所有案例类型信息;其中,生成案例类型的树型结构读取所述的案例类型表。由于系统默认第一层节点的上一层节点代码全部为0,故扫描所有上一层类型代码为0的类型代码为第一层的节点,扫描所有上一层类型代码为第一层代码的类型代码为第二层的节点,以此类推。所述的案例设计器包括自动生成界面测试案例单元,该自动生成界面测试案例单元包括交易代码管理模块用于进行交易代码搜索、交易代码新增、交易代码修改、交易代码删除;输入项管理模块用于进行输入项新增、输入项修改、输入项删除;检查项管理模块用于检查项新增、检查项修改、检查项删除;自动生成测试数据模块用于交易输入场检查、测试案例数据生成;测试规范导入导出模块用于测试规范导入、测试规范导出。所述的交易是指各种被测应用软件。所述的测试记录处理单元用于引用已经生成的测试案例,对测试案例中的变量进行赋值,生成可以运行的测试记录。所述的测试记录处理单元使用的文件包括测试案例库中的案例脚本和测试记录库中的测试记录脚本;使用的表包括 案例表(TC)纪录已经生成的测试案例的信息;测试记录表(TD)纪录已经生成的测试记录的信息;项目名称对照表(PNC)纪录测试库中的项目和对应的项目编号;轮次名称对照表(TN)纪录测试库中的轮次和对应的轮次编号;其中,新建测试记录的测试案例树由四层组成;前三层是案例类型的三个层次;第四层是用户名;以三个层次得到案例类型代码,搜索案例表,得到所有不重复测试案例的提交者名称;然后用提交者名称搜索用户管理表(UM)的realname字段,得到提交者的真实名称,显示为案例树的第四层;在案例脚本中增加赋值语句生成测试记录脚本。所述的测试记录处理单元还包括测试记录重用模块,用于从已经生成的测试记录中生成新的测试记录,并保留原测试记录的所有变量值,直接运行测试或者修改某几个变量值后进行不同功能点的测试。所述的测试记录重用模块包括,单条复制用于本文档来自技高网
...

【技术保护点】
一种基于脚本解释工具的自动化软件测试系统,其中包括,测试案例库:用于存储测试案例信息、测试案例脚本;测试记录库:用于存储测试记录信息、测试记录脚本;测试案例处理单元:用于对测试案例的生成、删除、重用进行处理; 测试记录处理单元:用于对测试记录的生成、删除、复制、运行状态统计进行处理;测试案例管理单元:由脚本解释工具构成,用于管理测试记录运行期间的所有操作;测试总控单元:用于对系统资源和硬件资源进行控制;所述的测试总控单元通 过人机界面接受用户的操作指令信息,并控制所述的测试案例处理单元从所述的测试案例库中读取测试案例的初始数据,经用户的编辑操作之后,以文本形式保存测试案例脚本,并将其路径保存在测试案例库中;所述的测试案例经过所述的测试记录处理单元生成测试记录,保存在所述的测试记录库中,同时以文本的形式保存测试记录脚本;运行所述的测试记录,测试记录脚本通过所述的测试案例管理单元将测试数据传送到各应用程序进行处理,得到运行结果,将运行结果经所述的测试案例管理单元保存到所述的测试记录库...

【技术特征摘要】

【专利技术属性】
技术研发人员:李旭风刘家桦丘嘉宜李从虎张宇明江炜斌
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1