基于osgi的应用框架测试方法和系统的制作方法_2

文档序号:9921951阅读:来源:国知局
>[0032]所述Test Framework Trigger Center Bundle 通过新建 Socket Accepter,以及Accepter端口绑定,实现服务Server的启动和响应端口的开启;
[0033]所述Test Framework Trigger Center Bundle接收输入的测试脚本信息。
[0034]优选的,所述方法还包括:
[0035]所述Test Assembly Config Bundle 通过 OSGI Layer service/bundle MF 方式,控制所述Test Framework Trigger Center Bundle同OSGI运行时交互,将每个测试用例在运行时所加载的框架业务逻辑同测试代码分离。
[0036]优选的,所述OSGI测试框架通过封装或重写的Junit类似功能的测试接口或服务部分,提供给测试用例编写者测试框架接口或服务,为每个测试脚本的每个测试方法提供用例相关信息,其中,所述用例相关信息包括测试用例的描述、指定过程和执行结果记录;
[0037]所述Test Framework Trigger Center Bundle在测试用例的触发执行过程中,将所述用例相关信息存储到DB中。
[0038]另一方面,本申请实施例还提出了一种OSGI测试框架,至少包括Test AssemblyConfig Bundle、OSGI Bundle 和 OSGI 运行时,其中,所述 Test Assembly Config Bundle 中至少包括一个测试框架管理中心包Test Framework Trigger Center Bundle:
[0039]所述Test Assembly Config Bundle,具体用于:
[0040]根据通过启动脚本传入的D参数,确定所述OSGI Bundle的MF文件的导入导出类;
[0041 ] 与所述OSGI运行时交互隔离测试代码和所述OSGI Bundle逻辑代码;
[0042]通过所述Test Framework Trigger Center Bundle,按照测试用例标识触发相应的测试用例的执行,并按照所述MF文件的导入导出类,通过所述OSGI Bundle输出相应粒度的测试结果。
[0043]优选的,所述Test Framework Trigger Center Bundle,具体用于:
[0044]加载OSGI运行时下的各测试用例信息;
[0045]根据通过启动脚本传入的D参数所确定的OSGI Bundle MF文件的导入导出类,控制所有的测试数据包;
[0046]测试OSGI Bundle MF文件中新增的标签;
[0047]通过测试接口控制与OSGI Bundle MF文件的导入导出类相对应的测试过程范围,并存储相应的测试结果到DB中。
[0048]优选的,所述Test Framework Trigger Center Bundle,还用于:
[0049]通过新建Socket Accepter,以及Accepter端口绑定,实现服务Server的启动和响应端口的开启;
[0050]接收输入的测试脚本信息。
[0051]优选的,所述Test Assembly Config Bundle,还用于:
[0052]通过OSGI Layer service/bundle MF 方式,控制所述 Test Framework TriggerCenter Bundle同OSGI运行时交互,将每个测试用例在运行时所加载的框架业务逻辑同测试代码分离。
[0053]优选的,所述OSGI测试框架,还用于:
[0054]通过封装或重写的Junit类似功能的测试接口或服务部分,提供给测试用例编写者测试框架接口或服务,为每个测试脚本的每个测试方法提供用例相关信息;
[0055]其中,所述用例相关信息包括测试用例的描述、指定过程和执行结果记录;
[0056]所述用例相关信息被所述Test Framework Trigger Center Bundle在测试用例的触发执行过程中存储到所述DB中。
[0057]与现有技术相比,本申请所提出的技术方案至少具有以下优点:
[0058]通过应用本申请实施例的技术方案,通过新的OSGI测试框架理论,更好的动态控制细粒度测试范围,在OSGI环境某些场景下,通过应用框架在启动脚本中传入的细粒度-Dunittesting参数,通过增加MF文件新的标签,动态控制OSGI MF文件的导入导出类,最终从单元测试(集成单元测试)角度编写集成测试脚本测试,最终逐步完善测试场景,并逐步增加遗漏的测试场景范围,可以更好提升OSGI应用框架程序的覆盖率。
【附图说明】
[0059]图1为现有技术中一种框架原理的示意图;
[0060]图2为现有技术中通过BundleActivator接口实现场景的示意图;
[0061]图3为现有技术中通过Declarative Services的方式实现场景的示意图;
[0062]图4为现有技术中另一种框架原理的示意图;
[0063]图5为现有技术中另一种框架原理的不意图;
[0064]图6为本申请实施例提供的一种基于OSGI的应用框架测试方法的流程示意图;
[0065]图7为现有技术中另一种框架原理的示意图;
[0066]图8为本申请实施例提供的一种基于OSGI的应用框架的TJK意图;
[0067]图9为本申请实施例提供的一种处理流程示意图;
[0068]图10为本申请实施例提供的一种处理流程示意图;
图11为本申请实施例提供的一种测试实现示例的示意图;
[0069]图12为本申请实施例提供的一种测试实现和相关测试结果的示意图;
[0070]图13为本申请实施例提供的一种测试用例触发逻辑部分相关代码和实现的示意图;
[0071]图14为本申请实施例提供的一种OSGI测试框架的结构示意图。
【具体实施方式】
[0072]为了解决现有技术中存在的问题,本申请提出了一种基于OSGI的应用框架测试方法,通过新的OSGI测试框架理论,更好的动态控制细粒度测试范围。
[0073]如图6所示,为本申请实施例提供的一种基于OSGI的应用框架测试方法的流程示意图,应用于包括Test Assembly Config Bundle (测试组件配置包)的OSGI测试框架中,所述 Test Assembly Config Bundle 中至少包括一个 Test Framework Trigger CenterBundle (测试框架管理中心包),本方法包括:
[0074]步骤S601、所述Test Assembly Config Bundle根据通过启动脚本传入的D参数,确定应用框架OSGI Bundle的MF(软件架构)文件的导入导出类。
[0075]步骤S602、所述Test Assembly Config Bundle与OSGI运行时交互隔离测试代码和所述OSGI Bundle逻辑代码。
[0076]步骤S603、所述Test Assembly Config Bundle通过所述Test Framework TriggerCenter Bundle,按照测试用例标识触发相应的测试用例的执行,并按照所述MF文件的导入导出类,通过所述OSGI Bundle输出相应粒度的测试结果。
[0077]在具体的应用场景中,本步骤的执行过程具体包括:
[0078]所述Test Framework Trigger Center Bundle加载OSGI运行时下的各测试用例信息;
[0079]所述Test Framework Trigger Center Bundle根据通过启动脚本传入的D参数所确定的OSGI Bundle MF文件的导入导出类,控制所有的测试数据包;
[0080]所述Test Framework Trigger Center Bundle 测试 OSGI Bundle MF 文件中新增的标签;
[0081]所述TestFramework Trigger Center Bundle通过测试接口控制与 OSGI BundleMF文件的导入导出类相对应的测试过程范围,并存储相应的测试结果到DB(Data Base,数据库)中;
[0082]所述Test Assembly Config Bundle通过所述OSGI Bundle输出相应粒度的测试结果。
[0083]进一步的,上述的过程中还包括:
[0084]所述Test Framework Trigger Center Bundle 通过新建 Socket Accepter,以及Accepter端口绑定,实现服务Server的启动和响应端口的开启;
[0085]所述Test Framework Trigger Center Bundle接收输入的测试脚本信息。
[0086]进一步的,本方法还包括:
[0087]所述Test Assembly Config Bundle 通过 OSGI Layer service/bundle MF 方式,控制所述Test Framework Trigger Center Bundle同OSGI运行时交互,将每个测试用例在运行时所加载的框架业务逻辑同测试代码分离。
[0088]另一方面,所述OSGI测试框架通过封装或重写的Junit类似功能的测试接口或服务部分,提供给测试用例编写者测试框架接口或服务,为每个测试脚本的每个测试方法提供用例相关信息,其中,所述用例相关信息包括测试用例的描述、指定过程和执行结果记录;
[0089]所述Test Framework Trigger Center Bundle在测试用例的触发执行过程中,将所述用例相关信息存储到DB中。
[0090]与现有技术相比,本申请实施例所提出的技术方案具有以下优点:
[0091]通过应用本申请实施例的技术方案,通过新的OSGI测试框架理论,更好的动态控制细粒度测试范围,在OSGI环境某些场景下,通过应用框架在启动脚本中传入的细粒度-Dunittesting参数,通过增加MF文件新的标签,动态控制OSGI MF文件的导入导出类,最终从单元测试(集成单元测试)角度编写集成测试脚本测试,最终逐步完善测试场景,并逐步增加遗漏的测试场景范围,可以更好提升OSGI应用框架程序的覆盖率。
[0092]下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0093]发明人发现,由于采用了 Eclipse的OSGI实现Equinox为基础,研发了新的应用框架与容器基础组件,由于OSGI框架使用Bun
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1