数据访问层验证方法及装置、存储介质及电子装置制造方法及图纸

技术编号:29253792 阅读:20 留言:0更新日期:2021-07-13 17:24
本发明专利技术提供了一种数据访问层验证方法及装置、存储介质及电子装置,其中,上述数据访问层验证方法包括:通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据库,包括表结构和数据;通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。采用上述技术方案,解决了相关技术中,对数据访问层进行验证时,不能兼顾验证效果和外部依赖的问题。

【技术实现步骤摘要】
数据访问层验证方法及装置、存储介质及电子装置
本专利技术涉及通信领域,具体而言,涉及一种数据访问层验证方法及装置、存储介质及电子装置。
技术介绍
在各种计算机模型和框架中,都需要对数据访问层进行验证。现有技术通过两种方式对数据访问层进行验证:第一种方式:直接Mock的方式,用一个虚拟的对象(Mock对象),实现数据访问层的测试,可以不依赖外部服务。但是对数据访问层直接Mock出结果,相当于直接忽略了对数据访问层层复杂sql、返回对象内容的验证,上述方式不能对数据访问层进行验证。第二种方式:用内存数据库的方式,替代物理数据库,对数据访问层进行验证。以第二种方式对数据访问层进行验证,结果准确,但是无法解决外部依赖的问题,也就是说,通过第二种方式不能实现对依赖于外部环境的数据访问层进行验证。针对相关技术中,对数据访问层进行验证时,不能兼顾验证效果和外部依赖的问题,尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种数据访问层验证方法及装置、存储介质及电子装置,以解决相关技术中,对数据访问层进行验证时,不能兼顾验证效果和外部依赖的问题。根据本专利技术的一个实施例,提供了一种数据访问层验证方法,包括:通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据库,包括表结构和数据;通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。进一步地,通过精准加载方式获取测试数据,包括:获取内存数据库,其中,所述内存数据库是待测测试类对应的数据库,存储的数据包括所述测试数据,所述待测测试类包括所述当前测试类和在所述待测测试类中除所述当前测试类以外的剩余测试类;根据所述当前测试类,通过所述精准加载方式从所述内存数据库中确定所述测试数据。进一步地,获取所述测试数据之后,所述方法还包括:在所述测试数据中存储了剩余测试类和所述当前测试类都对应的第一表结构和表数据的情况下,对所述测试数据进行清理处理,以使所述测试数据不存储所述第一表结构和表数据;获取所述第一表结构和表数据对应的第二表结构和表数据;对进行所述清理处理后测试数据和所述第二表结构和表数据进行合并处理,得到新的测试数据。进一步地,根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证之前,所述方法还包括:对所述当前测试类进行解析处理,以确定所述当前测试类对应的加载内容,其中,所述加载内容包括:所述测试数据、所述业务类、所述程序包;获取所述当前测试类对应的加载内容。进一步地,对所述业务类进行实例化操作,包括:确定所述业务类的类别,其中,所述业务类包括不依赖外部服务的业务类和依赖外部服务的业务类;当所述业务类是不依赖外部服务的业务类时,采用ContextConfigurationzhu注解方式对所述业务类进行实例化操作;当所述业务类是依赖外部服务的业务类时,采用mockbean注解方式对所述业务类进行实例化操作。进一步地,在指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包之后,所述方法还包括:获取所述数据访问层的反馈信息;根据所述反馈信息对所述数据访问层进行验证。根据本专利技术的又一个实施例,还提供了一种数据访问层验证装置,包括:第一加载模块,用于通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据库,包括表结构和数据;第二加载模块,用于通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;第三加载模块,用于指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;验证模块,用于根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。进一步地,所述第一加载模块还用于:获取内存数据库,其中,所述内存数据库是待测测试类对应的数据库,存储的数据包括所述测试数据,所述待测测试类包括所述当前测试类和在所述待测测试类中除所述当前测试类以外的剩余测试类;根据所述当前测试类,通过所述精准加载方式从所述内存数据库中确定所述测试数据。根据本专利技术的又一个实施例,还提供了一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行以上任一项中所述的方法。根据本专利技术的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行以上任一项中所述的方法。通过本专利技术,通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据库,包括表结构和数据;通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。也就是说,本专利技术通过精准加载方式获取测试数据、所述当前测试类的业务类和所述当前测试类的程序包,根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。采用上述技术方案,解决了相关技术中,对数据访问层进行验证时,不能兼顾验证效果和外部依赖的问题,从而在解决外部依赖问题的同时,保证对数据访问层验证的效果。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是本专利技术实施例的一种数据访问层验证方法的计算机终端的硬件结构框图;图2是根据本专利技术实施例的一种数据访问层验证方法的流程示意图;图3是根据本专利技术实施例的一种数据访问层验证装置的结构框图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请实施例所提供的方法实施例可以在计算机终端,或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本专利技术实施例的一种数据访问层验证方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(MicroprocessorUnit,简称是MPU)或可编程逻辑器件(Programmablelogicdevice,简称是PLD))和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示本文档来自技高网...

【技术保护点】
1.一种数据访问层验证方法,其特征在于,包括:/n通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据;/n通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;/n指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;/n根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。/n

【技术特征摘要】
1.一种数据访问层验证方法,其特征在于,包括:
通过精准加载方式获取测试数据,其中,所述测试数据是当前测试类对应的数据;
通过所述精准加载方式获取所述当前测试类的业务类,并对所述业务类进行实例化操作;
指示数据访问层通过所述精准加载方式获取所述当前测试类的程序包;
根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证。


2.根据权利要求1所述的方法,其特征在于,通过精准加载方式获取测试数据,包括:
获取内存数据库,其中,所述内存数据库是待测测试类对应的数据库,存储的数据包括所述测试数据,所述待测测试类包括所述当前测试类和在所述待测测试类中除所述当前测试类以外的剩余测试类;
根据所述当前测试类,通过所述精准加载方式从所述内存数据库中确定所述测试数据。


3.根据权利要求1所述的方法,其特征在于,获取所述测试数据之后,所述方法还包括:
在所述测试数据中存储了剩余测试类和所述当前测试类都对应的第一表结构和表数据的情况下,对所述测试数据进行清理处理,以使所述测试数据不存储所述第一表结构和表数据;
获取所述第一表结构和表数据对应的第二表结构和表数据;
对进行所述清理处理后测试数据和所述第二表结构和表数据进行合并处理,以更新所述测试数据。


4.根据权利要求1所述的方法,其特征在于,根据所述测试数据和进行所述实例化操作后的业务类对获取所述程序包后的数据访问层进行验证之前,所述方法还包括:
对所述当前测试类进行解析处理,以确定所述当前测试类对应的加载内容,其中,所述加载内容包括:所述测试数据、所述业务类、所述程序包;
获取所述当前测试类对应的加载内容。


5.根据权利要求1所述的方法,其特征在于,对所述业务类进行实例化操作,包括:
确定所述业务类的类别,其中,所述业务类包括不依赖外部服务的业务...

【专利技术属性】
技术研发人员:蒋鹏
申请(专利权)人:青岛海尔科技有限公司海尔智家股份有限公司
类型:发明
国别省市:山东;37

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

1