专利名称:一种生成测试用例脚本的方法、装置及系统的制作方法
技术领域:
本发明涉及信息技术领域,尤其涉及一种生成测试用例脚本的方法、装置及系统。
背景技术:
专业快速测试(QTP, Quicktest Professional)是一种自动测试工具,QTP可执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。QTP进行功能测试的测试流程大致分为制定测试计划、创建测试脚本、增强测试脚本功能、运行测试、分析测试结果五个步骤,在创建测试脚本时,现有的QTP脚本都是基于对象库的关键字驱动来写的。当脚本数量日益增加,对象库越来越大时,由于对象命名的混乱导致的错误会越来越多,脚本运行的速度也会越来越慢,脚本的维护更会成为一件费时低效的工作。
发明内容
本发明实施例提供了一种生成测试用例脚本的方法、装置及系统,用以将手工测试用例生成自动测试用例脚本。本发明实施例提供的生成测试用例脚本的方法,包括:将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合;装载所述用例实例;根据所装载的用例实例生成自动测试用例脚本。本发明实施例提供的生成测试用例脚本的装置,包括:生成单元,用于将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合;装载单元,用于装载所述用例实例;所述生成单元,还用于根据所装载的用例实例生成自动测试用例脚本。本发明实施例提供的生成测试用例脚本的系统,包括:用例装载器,以及用例生成器;所述用例装载器,用于将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合,并装载所述用例实例;所述用例生成器,用于根据所装载的用例实例生成自动测试用例脚本。从以上技术方案可以看出,本发明实施例具有以下优点:将用例配置文件、标准控件描述文件、用例的数据、服务组件生成用例实例,其中,标准控件描述文件是不同控件的共性文件,是控件识别的基础,当测试界面发生变化时,修改发生变化的控件属性即可,降低脚本维护成本。并且,通过控件描述文件进行控件的识别,支持用户根据需要自定义控件,又由于控件属性固定,使得脚本更稳定有效。而后,装载该用例实例,根据所装载的用例实例生成自动测试用例脚本,由此,通过将手工测试用例转换为系统自动执行的测试用例脚本,可提高维护脚本的效率,提高处理数据效率。
图1为本发明实施例中生成测试用例脚本的方法的一个实施例示意图;图2为本发明实施例中生成测试用例脚本的方法的另一个实施例示意图;图3为本发明实施例中生成测试用例脚本的装置的一个实施例示意图;图4为本发明实施例中生成测试用例脚本的装置的另一个实施例示意图;图5为本发明实施例中生成测试用例脚本的系统的一个实施例示意图。
具体实施例方式本发明实施例提供了一种生成测试用例脚本的方法、装置及系统,用于将手工测试用例生成自动测试用例脚本。以下分别进行详细说明。请参阅图1,本发明实施例中的生成测试用例脚本的方法的一个实施例包括:101、将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例;将手工测试用例配置文件、标准控件表述文件、用例的数据、服务组件生成用例实例,用例实例是对一个用例的详细描述,包括用例的名称、用例的参数设置、用例的初始化、用例所需的数据、用例主题和用例的结束处理。其中,用例配置文件为用例操作步骤的相关属性文件;用例配置文件的主要功能包括:1、确定用例操作步骤所在的页面或框架;2、选择用例操作步骤的输入值及输出值;3、明确用例前后操作步骤间的关系;4、确定用例操作步骤间的等待时间;可以使用系统默认的时间,也可以由用户进行个性化配置该等待时间。5、不同用例操作步骤的检查点;可以有不同类型的检查点。6、确定不同用例操作步骤的异常处理策略。为不同的异常提供不同的异常处理策略。标准控件描述文件用于将测试系统的控件进行标准化描述,是不同控件的共性文件,是控件识别的基础,当系统测试界面发生变化时,只要修改变化的控件属性即可。服务组件为各个服务的集合,是按照一定服务需求对数据和方法的简单封装,对外提供一定功能服务的对象。 用例的数据包括用户名,单据的编号等数据。102、装载用例实例;在用例加载设备中,装载用例实施例,处理用例各操作步骤间的流程。103、根据所装载的用例实例生成自动测试用例脚本。在用例生成设备中,根据所装载的各用例实例生成自动测试用例脚本。本发明实施例中,将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,标准控件描述文件用于将测试系统的控件进行标准化描述,是不同控件的共性文件,是控件识别的基础,当测试界面发生变化时,修改发生变化的控件属性即可,降低脚本维护成本。并且,通过控件描述文件进行控件的识别,支持用户自定义控件,又由于控件属性固定,则脚本更稳定有效。而后,装载用例实例,根据所装载的各用例实例生成自动测试用例脚本,通过将手工测试用例转换为自动测试用例脚本,提高维护脚本的效率,提高处理数据效率。下面以另一实施例详细描述本发明实施例中的生成测试用例脚本的方法,请参阅图2,本发明实施例中的生成测试用例脚本的方法的另一个实施例包括:201、将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例;将手工测试用例配置文件、标准控件表述文件、用例的数据、服务组件生成用例实例,用例实例是对一个用例的详细描述,包括用例的名称、用例的参数设置、用例的初始化、用例所需的数据、用例主题和用例的结束处理,以上各参数的具体含义及作用,请参阅图1所示实施例中步骤101中的相关描述,此处不再赘述。其中,服务组件中的服务类型可包括用例模块服务、排队处理服务、异常处理服务、检验服务。进一步的,用例模块服务用于将用例脚本模块化,使得其他用例可以复用该用例脚本,例如登录、注销等常用脚本;排队处理服务用于为用例各操作步骤进行排序,只有上一个步骤执行完毕才开始执行下一个步骤,当遇到异常情况则进入等待时间;异常处理服务用于执行当测试流程异常时的处理策略,当所测试的页面未按预置流程进行时,执行该异常处理策略;检验服务用于检验已完成检测的程序是否异常。本实施例中的服务组件还支持第三方扩展服务,例如模态对话框处理服务、分支处理服务、错误截屏服务。202、载入用例模板;在用例加载设备中载入用例模板,用例模板为一定的用例规范,为各用例的公共步骤,可供执行程序复用。203、解析该用例模板中的用例步骤,读取用例数据;解析用例模板中的用例步骤,读取用例各步骤中的用例数据。204、将该服务组件各服务的用例模板,加载到对应的用例执行步骤间;将解析后的用例模板中服务组件的各服务的用例模板,即用例的公共步骤,加载到与其相对应的用例执行步骤间。205、将处理后的用例数据封装为用例实例;由该用例加载设备,将处理后的用例数据封装为用例实例,用例实例通过用例的名称、用例的参数设置、用例的初始化、用例所需的数据、用例主题和用例的结束处理,来详细描述一个用例。206、解析所封装的用例实例,并读取该用例实例中的用例关键字段;在用例生成设备中,解析用例加载设备所封装的用例实例,并读取该用例实例中的用例关键字段。
207、将该用例关键字段,转换为符合自动测试用例脚本的字段格式;将读取的用例关键字段,转换为符合自动测试用例的关键字段,以生成自动测试用例脚本。208、根据自动测试用例的关键字段生成自动测试用例的脚本。由用例生成设备,根据自动测试用例的关键字段生成自动测试用例的脚本,当用户选择该自动测试用例脚本时,不需要手动输入数据,运行该自动测试用例脚本,完成测试,显示测试结果。需要说明的是,本发明实施例中,用例实例是产生用例脚本的基础,用例实例与用
例脚本的对应关系请见下表:
权利要求
1.一种生成测试用例脚本的方法,其特征在于,包括: 将用例配置文件、标准控件描述文件、用例数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合; 装载所述用例实例; 根据所装载的用例实例生成自动测试用例脚本。
2.根据权利要求1所述的方法,其特征在于,所述服务组件中的服务类型包括:用例模块服务、排队处理服务、异常处理服务及检验服务; 其中,所述用例模块服务用于将用例脚本模块化,所述排队处理服务用于为用例的操作步骤进行排序,所述异常处理服务用于执行当测试流程异常时的处理策略,所述检验服务用于检验已完成的测试程序是否异常。
3.根据权利要求1或2所述的方法,其特征在于,所述装载用例实例包括: 载入用例模板,所述用例模板为用例的公共步骤; 解析所述用例模板中的用例步骤,读取用例数据; 将所述服务组件中各服务的用例模板,加载到对应的用例执行步骤间; 将处理后的用例数据封装为用例实例。
4.根据权利要求3所述的方法,其特征在于,所述根据所装载的用例实例生成自动测试用例包括: 解析所封装的用例实例,并读取所述用例实例中的用例关键字段; 将所述用例关键字段的格式,转换为符合所述自动测试用例脚本的字段格式,生成自动测试用例脚本。
5.一种生成测试用例脚本的装置,其特征在于,包括: 生成单元,用于将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合; 装载单元,用于装载所述用例实例; 生成用例单元,用于根据所装载的用例实例生成自动测试用例脚本。
6.根据权利要求5所述的装置,其特征在于, 所述服务组件中的服务类型包括:用例模块服务、排队处理服务、异常处理服务及检验服务; 其中,所述用例模块服务用于将用例脚本模块化,所述排队处理服务用于为用例的操作步骤进行排序,所述异常处理服务用于执行当测试流程异常时的处理策略,所述检验服务用于检验已完成的测试程序是否异常。
7.根据权利要求5或6所述的装置,其特征在于,所述装载单元包括: 载入模块,用于载入用例模板,所述用例模板为用例的公共步骤; 解析模块,用于解析所述用例模板中的用例步骤,读取用例数据; 加载模块,用于将所述服务组件中各服务的用例模板,加载到对应的用例执行步骤间; 封装模块,用于将处理后的用例数据封装为用例实例。
8.根据权利要求7所述的装置,其特征在于,所述生成用例单元包括: 解析用例实例模块,用于解析所封装的用例实例; 读取模块,用于读取所述用例实例中的用例关键字段; 转换模块,用于将所述用例关键字段的格式,转换为符合所述自动测试用例脚本的字段格式,生成自动测试用例脚本。
9.一种生成测试用例脚本的系统,其特征在于,包括: 用例装载器,以及用例生成器; 所述用例装载器,用于将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,其中,所述配置文件为用例操作步骤的相关属性文件,所述标准控件描述文件用于将测试系统的控件进行标准化描述,所述服务组件为各个服务的集合,并装载所述用例实例; 所述用例生成器,用于根据所装载的用例实例生成自动测试用例脚本。
全文摘要
本发明实施例公开了一种生成测试用例脚本的方法、装置及系统,用于将手工测试用例生成自动测试用例脚本。本发明实施例方法包括将用例配置文件、标准控件描述文件、用例的数据及服务组件生成用例实例,装载用例实例,根据所装载的用例实例生成自动测试用例脚本。
文档编号G06F9/44GK103186460SQ201110455710
公开日2013年7月3日 申请日期2011年12月30日 优先权日2011年12月30日
发明者张丙林, 李头, 闵刚, 刘芬 申请人:金蝶软件(中国)有限公司