一种中间库测试方法及终端技术

技术编号:19821506 阅读:27 留言:0更新日期:2018-12-19 14:36
本发明专利技术提供一种中间库测试方法及终端,通过将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动,基于所述虚拟驱动对中间库进行测试,对于已经测试过的真实驱动,仅通过验证虚拟驱动输入参数的测试结果的正确性,即可覆盖真实驱动的测试,能够有效解决对已经进行详细测试的真实驱动进行重复测试的问题,同时可以做到对中间库的自动化测试以及全面测试,极大的加快了测试效率,缩短了测试周期。

【技术实现步骤摘要】
一种中间库测试方法及终端
本专利技术涉及中间库测试领域,尤其涉及一种中间库测试方法及终端。
技术介绍
目前,对中间库测试时,无法避免的将对中间库以下的包括驱动在内进行测试覆盖,对中间库测试需要引入驱动测试中的各种环境制造与人工干预校验,且经常出现对已经进行详细测试的驱动进行重复测试的问题,测试的时间成本与人工成本高,测试自动化程度和测试效率较低。
技术实现思路
本专利技术所要解决的技术问题是:提供一种高自动化、高效率的中间库测试方法及终端。为了解决上述技术问题,本专利技术采用的一种技术方案为:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。为了解决上述技术问题,本专利技术采用的另一种技术方案为:一种中间库测试终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。本专利技术的有益效果在于:通过将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动,基于所述虚拟驱动对中间库进行测试,对于已经测试过的真实驱动,仅通过验证虚拟驱动输入参数的测试结果的正确性,即可覆盖真实驱动的测试,能够有效解决对已经进行详细测试的真实驱动进行重复测试的问题,同时可以做到对中间库的自动化测试以及全面测试,极大的加快了测试效率,缩短了测试周期。附图说明图1为本专利技术实施例的中间库测试方法流程图;图2为本专利技术实施例的中间库测试终端结构示意图;标号说明:1、中间库测试终端;2、存储器;3、处理器。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动,基于所述虚拟驱动对中间库进行测试。请参照图1,一种中间库测试方法,包括步骤:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。从上述描述可知,本专利技术的有益效果在于:通过将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动,基于所述虚拟驱动对中间库进行测试,对于已经测试过的真实驱动,仅通过验证虚拟驱动输入参数的测试结果的正确性,即可覆盖真实驱动的测试,能够有效解决对已经进行详细测试的真实驱动进行重复测试的问题,同时可以做到对中间库的自动化测试以及全面测试,极大的加快了测试效率,缩短了测试周期。进一步的,所述虚拟驱动与真实驱动同名,并重载了所有真实驱动暴露的api。由上述描述可知,由于虚拟驱动与真实驱动同名并重载了所有真实驱动暴露的api,因此可实现中间库调用所述虚拟驱动来代替真实驱动。进一步的,所述步骤S1中所述将虚拟驱动替代真实驱动包括:设置虚拟驱动加载的优先级高于真实驱动。由上述描述可知,通过设置虚拟驱动加载的优先级高于真实驱动,可使中间库调用驱动时优先加载虚拟驱动,实现虚拟驱动代替真实驱动。进一步的,所述设置虚拟驱动加载的优先级高于真实驱动具体包括:根据操作系统的环境变量,将虚拟驱动推送到比真实驱动所在的第一目录文件位置靠前的第二目录文件。由上述描述可知,应用系统通过配置系统环境变量来确定加载应用的优先级,所以将虚拟驱动推送到比真实驱动所在的第一目录文件位置靠前的第二目录文件,可使系统优先加载虚拟驱动。进一步的,所述步骤S1中将所述虚拟驱动动态链接到所述真实驱动包括:使用dlopen接口,传入真实驱动的路径,并通过接口dlsym函数,将虚拟驱动重载的api与真实驱动的api做绑定。由上述描述可知,通过dlopen接口传入真实驱动的路径,和接口dlsym函数,将虚拟驱动重载的api与真实驱动的api做绑定,实现虚拟驱动链接到真实驱动,在典型应用测试中,可以对整个应用调用驱动api监听的同时,还可以顺利执行交易,不因虚拟驱动替代真实驱动而导致无法执行现有交易。进一步的,所述步骤S2包括:S21、调用中间库实现业务流程,触发中间库调用虚拟驱动接口操作与所述业务流程对应的硬件;S22、针对所述业务流程,启动对应的测试服务,设置驱动的输入参数,获取所述虚拟驱动针对所述输入参数的第一返回值;S23、调用测试服务根据所述第一返回值对所述中间库进行验证。由上述描述可知,中间库通过调用虚拟驱动实现业务流程,并进行测试,通过第一返回值对所述中间库的验证,验证虚拟驱动调用的正确性。进一步的,所述步骤S22中还包括:设置针对所述驱动的输入参数的预期的第二返回值。由上述描述可知,通过设置针对所述驱动的输入参数的预期的第二返回值,以便于验证第一返回值的正确性。进一步的,所述步骤S22中,所述输入参数、第一返回值和预期的第二返回值均保存于测试服务中。由上述描述可知,所述输入参数、第一返回值和预期的第二返回值均保存于测试服务中,方便于测试的入参操作和数据返回值的对比校验。进一步的,所述步骤S23中根据所述第一返回值对所述中间库进行验证具体包括:将所述第一返回值与预期的第二返回值进行对比,判断第一返回值与预期的第二返回值是否相等,若是,则中间库对驱动的调用是正确的,否则,中间库对驱动的调用是错误的。由上述描述可知,通过第一返回值和预期的第二返回值比对是否相等,用来判断虚拟驱动调用的正确性,以便于后续的系列维护。进一步的,通过测试服务对所述虚拟驱动是否需要动态链接到真实驱动进行配制。由上述描述可知,通过测试服务对所述虚拟驱动是否需要动态链接到真实驱动进行配制,防止在未启动测试程序时,设备初始化时操作硬件失败导致系统异常。请参照图2,一种中间库测试终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。进一步的,所述虚拟驱动与真实驱动同名,并重载了所有真实驱动暴露的api。由上述描述可知,由于虚拟驱动与真实驱动同名并重载了所有真实驱动暴露的api,因此可实现中间库调用所述虚拟驱动来代替真实驱动。进一步的,所述步骤S1中所述将虚拟驱动替代真实驱动包括:设置虚拟驱动加载的优先级高于真实驱动。由上述描述可知,通过设置虚拟驱动加载的优先级高于真实驱动,可使中间库调用驱动时优先加载虚拟驱动,实现虚拟驱动代替真实驱动。进一步的,所述设置虚拟驱动加载的优先级高于真实驱动具体包括:根据操作系统的环境变量,将虚拟驱动推送到比真实驱动所在的第一目录文件位置靠前的第二目录文件。由上述描述可知,应用系统通过配置系统环境变量来确定加载应用的优先级,所以将虚拟驱动推送到比真实驱动所在的第一目录文件位置靠前的第二目录文件,可使系统优先加载虚拟驱动。进一步的,所述步骤S1中将所述虚拟驱动动态链接到所述真实驱动包括:使用dlopen接口,传入真实驱动的路径,并通过接口dlsym函数,将虚拟驱动重载的api与真实驱动的api做绑定。由上述描述可知,通过dlopen接口传入真实驱动的路径,和接口dlsym函数,将虚拟驱动重载的api与真实驱动的api做绑定,实现虚本文档来自技高网
...

【技术保护点】
1.一种中间库测试方法,其特征在于,包括步骤:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。

【技术特征摘要】
1.一种中间库测试方法,其特征在于,包括步骤:S1、将虚拟驱动替代真实驱动,并将所述虚拟驱动动态链接到所述真实驱动;S2、基于所述虚拟驱动对中间库进行测试。2.根据权利要求1所述的中间库测试方法,其特征在于,所述虚拟驱动与真实驱动同名,并重载了所有真实驱动暴露的api。3.根据权利要求1所述的中间库测试方法,其特征在于,所述步骤S1中所述将虚拟驱动替代真实驱动包括:设置虚拟驱动加载的优先级高于真实驱动。4.根据权利要求3所述的中间库测试方法,其特征在于,所述设置虚拟驱动加载的优先级高于真实驱动具体包括:根据操作系统的环境变量,将虚拟驱动推送到比真实驱动所在的第一目录文件位置靠前的第二目录文件。5.根据权利要求1所述的中间库测试方法,其特征在于,所述步骤S1中将所述虚拟驱动动态链接到所述真实驱动包括:使用dlopen接口,传入真实驱动的路径,并通过接口dlsym函数,将虚拟驱动重载的api与真实驱动的api做绑定。6.根据权利要求1所述的中间库测试方法,其特征在于,所述步骤S2包括:S21、调用中间库实现业务流程,触发中间库调用虚拟驱动接口操作与所述业务流程对应的硬件;S22、针对所述业务流程,启动对应的测试服务,设置驱动的输入参数,获取所述虚拟驱动针对所述输入参数的第一返回值;S23、调用测试服务根据所述第一返回值对所述中间库进行验证。7.根据权利要求6所述的中间库测试方法,其特征在于,所述步骤S22中还包括:设置针对所述驱动的输入参数的预期的第二返回值。8.根据权利要求7所述的中间库测试方法,其特征在于,所述步骤S22中,所述输入参数、第一返回值和预期的第二返回值均保存于测试服务中。9.根据权利要求7所述的中间库测试方法,其特征在于,所述步骤S23中根据所述第一返回值对所述中间库进行验证具体包括:将所述第一返回值与预期的第二返回值进行对比,判断第一返回值与预期的第二返回值是否相等,若是,则中间库对驱动的调用是正确的,否则,中间库对驱动的调用是错误的。10.根据权利要求1所述的中间库测试方法,其特征在于,通过测试服务对所述虚拟驱动是否需要动态链接到真实驱动进行配制。11.一种中间库测试终端,包括存储器、处理器及存储在存储器上并可在处...

【专利技术属性】
技术研发人员:林桓
申请(专利权)人:福建联迪商用设备有限公司
类型:发明
国别省市:福建,35

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

1