本发明专利技术公开了一种可独立测试的组件架构实现方法,该方法通过提出一种组件架构,该组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现,同时所述组件是标准的动态库,测试脚本通过标准的命令接口调用所述组件,标准组件层接口提供功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。通过这种方案实现了可独立测试的组件技术架构的实现。
【技术实现步骤摘要】
本专利技术涉及软件技术,特别是涉及。
技术介绍
随着IT技术的不断发展,人们对软件的功能、性能、安全性等提出了更高的需求,导致软件的规模和复杂度日益增大,也给软件的开发带来了困难与挑战。针对这种情况,人们提出了各种技术与方案。如面向对象技术、组件技术、构件技术、中间件技术等。各种技术都有其实现方案。其中的组件技术是一种使用得非常广泛的技术,它通过将软件组件化来分解软件,从而降低软件的复杂度。组件技术在软件开发中应用的日益广泛,而组件技术的一些特点使得传统的软件测试理论和技术,对基于组件技术构造的软件系统并不完全适用。软件测试作为软件开发过程的重要环节,是保证软件质量,提高软件可靠性的重要手段。软件开发技术的发展,也必然会带动软件测试技术的发展。通俗地讲,软件测试是发现并指出软件系统缺陷的过程。缺陷在开发和维护的任何阶段都有可能发生,并由此产生一个或多个“漏洞”一错误、误解和冗余。测试包括寻找缺陷,但不包括调试和修复。在常用的客户端软件中,常由多个不同的功能模块和组件库模块组成;验证每个模块的功能测试需与客户端主程序的关联,这就导致测试机制过于复杂,使用不够简便。
技术实现思路
本专利技术提供了,该方法给出了可独立测试的组件架构和实现方法。为达到上述目的,本专利技术的技术方案是这样实现的,所述实现方法包括组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现;其中,所述标准组件层接口提供功能命令执行和订阅方法;所述组件接口定义中包含组件的功能命令标识和命令类型参数;在所述组件定义中不同的组件放置在不同的目录中,在组件定义中不包含具体组件的实现;所述组件实现中,所述组件是标准的动态库; 测试脚本通过标准的命令接口调用组件动态库,组件动态库通过标准组件层接口提供的功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。在上述方法中,所述标准组件层接口包括标准参数接口 ;标准组件层接口是实现具体的抽象虚基类的标准接口。在上述方法中,组件自定义标准命令参数和事件参数均须派生于所述标准参数接口类。在上述方法中,所述组件接口定义包括在组件的管理接口头文件中定义组件的ID ;所述组件接口定义派生于标准组件层接口。在上述方法中,所述组件接口定义包括组件接口定义中包含组件激发的事件ID和事件参数类型。在上述方法中,所述组件定义包括组件定义提供纯虚定义并对其他组件开发者开放。在上述方法中,所述组件实现包括所述标准的动态库导出初始化模块和注册组件到管理器函数;所述组件实现从标准层组件模块类派生,应用组件标准宏包装每个功能ID的实现函数;标准宏定义通用的功能ID、输入输出函数与实现函数映射。在上述方法进一步包括将所述组件架构下实现的组件模块注册到组件管理器中。在上述方法中,所述管理器包括管理器有界面、上层业务、下层业务、网络通道各层组件的管理器,具体在框架中实现;在框架中不同模块的管理器读取相对应的配置文件并调用配置文件中添加组件的配置信息。在上述方法中,该方法包括所述组件配置信息包括组件的名称、组件所在路径、组件ID、组件装载顺序和卸载顺序;所述管理器在应用组件时调用的接口是所述初始化模块。由上述可见,本专利技术提供了,该方法通过提出一种组件架构,该组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现,同时所述组件为标准的动态库,测试脚本通过标准的命令接口调用所述组件,标准组件层接口提供功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。通过这种方案实现了可独立测试的组件技术架构的实现。附图说明图1是本专利技术中的的实现示意图;图2是基于本专利技术中的组件架构实现组件功能命令测试的示意图。具体实施例方式为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本专利技术进行详细描述。一、组件架构实现图1是本专利技术中的的实现示意图。如图1所示,组件架构包括标准组件层接口、组件接口定义、组件定义和组件实现。1.组件接口定义组件接口定义派生于标准组件层接口。在组件接口定义中,包含组件实现的功能命令ID和命令参数类型,也可以包含组件激发的事件ID和事件参数类型。其中参数类型统一从标准参数接口中派生而组件的ID定义包含于组件的管理接口头文件中,即在组件的管理接口头文件中定义组件的ID。2.组件定义在所述组件定义中不同组件可以放置在不同的目录中。在组件定义中不包含具体组件的实现。但是,其提供纯虚定义并对其他组件开发者开放,如可使用纯虚函数实现。3.组件实现组件是标准的动态库,一个组件中可包涵多个命令对应的功能实现,功能命令在组件内唯一。标准的动态库导出初始化模块和注册组件到管理器函数。其中,初始化模块是管理器在应用组件时调用的接口。组件实现文件主要是实现组件每个功能ID对应的具体实现。所述组件实现是从标准层组件模板类派生的,并应用组件标准宏包装每个功能ID的实现函数。其中标准宏定义了通用的功能ID、输入输出参数与实现函数映射。4.标准组件层接口标准组件层接口是实现具体的抽象虚基类的标准接口,所述标准组件层接口中提供功能命令执行和订阅方法和统一的调用与测试定义方法,从而实现具体功能的调用与独立测试。标准组件层接口包含标准参数接口,所有自定义标准命令参数和事件参数均须派生自标准参数接口类。另外,将所述组件架构下实现的组件模块注册到组件管理器中。管理器有界面、上层业务、下层业务、网络通道各层组件的管理器,具体在框架中实现。在框架中,不同模块的管理器调用配置文件中添加组件的配置信息,不同组件管理器读取相对应的配置文件。组件配置信息包括,组件的名称,组件所在路径,组件ID,组件装载顺序和卸载顺序。二、基于上述组件架构实现组件功能命令测试的方法图2是基于本专利技术中的组件架构实现组件功能命令测试的示意图。如图2所示,组件的每个功能具有唯一的功能命令,单个的组件功能可以通过外部命令方式调用。其中,测试脚本通过标准的命令接口调用所述组件,标准组件层接口提供功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。下面以登录实例为例,列举一些具体的命令参数和事件参数的例子,同时具体说明外部命令如何传递给组件。登录业务中的登录上层业务组件动态库I)所述标准的动态库导出初始化模块和注册到管理器函数,即组件内实现初始化模块、自注册到框架、组件卸载函数。2)所述组件实现从标准层组件模块类派生,应用组件标准宏包装每个功能ID的实现函数,具体方式是组件头文件中实现从标准组件层接口派生的定义及标准宏定义。3)组件头文件中实现登录功能函数、显示对话框函数定义。4)组件实现文件中实现具体的函数功能。5)标准宏定义通用的功能ID、输入输出函数与实现函数映射。即,实现标准宏组件功能ID、参数与函数的映射A、定义功能ID;B、定义组件参数,如用户的登录ID和密码等,其派生于标准接口。6)标准组件层接口提供功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试A、定义下层业务参数,其也派生于标准接口 ;B、通过执行命令方式调用登录下层业务功能。综上所述,本专利技术提供了,该方法通过提出一种组件架构,该组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现。同时所述组件为标准的动态库,测试脚本通过标准的命令接口调用所述组件,标准组件层接口提供本文档来自技高网...
【技术保护点】
一种可独立测试的组件架构实现方法,其特征在于,所述实现方法包括:组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现;其中,所述标准组件层接口提供功能命令执行和订阅方法;所述组件接口定义中包含组件的功能命令标识和命令参数类型;在所述组件定义中不同的组件放置在不同的目录中,在组件定义中不包含具体组件的实现;所述组件实现中,组件是标准的动态库;测试脚本通过标准的命令接口调用组件动态库,组件动态库通过标准组件层接口提供的功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。
【技术特征摘要】
1.一种可独立测试的组件架构实现方法,其特征在于,所述实现方法包括 组件架构包括标准组件层接口,组件接口定义,组件定义和组件实现; 其中,所述标准组件层接口提供功能命令执行和订阅方法;所述组件接口定义中包含组件的功能命令标识和命令参数类型;在所述组件定义中不同的组件放置在不同的目录中,在组件定义中不包含具体组件的实现;所述组件实现中,组件是标准的动态库; 测试脚本通过标准的命令接口调用组件动态库,组件动态库通过标准组件层接口提供的功能命令执行和订阅方法,实现所述组件中具体功能的调用与独立测试。2.根据权利要求1所述的方法,其特征在于,所述标准组件层接口还包括标准参数接n ; 标准组件层接口是实现具体的抽象虚基类的标准接口。3.根据权利要求2所述的方法,其特征在于, 组件的自定义标准命令参数和事件参数均须派生于所述标准参数接口类。4.根据权利要求1所述的方法,其特征在于,所述组件接口定义还包括 在组件的管理接口头文件中定义组件的ID ; 所述组件接口定义派生于标准组件层接口。5.根据权利要求4所述的方法,其特征在于,所述组件接口定义还包...
【专利技术属性】
技术研发人员:郝永建,方顺豹,杨挺,
申请(专利权)人:北京新媒传信科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。