[发明专利]业务逻辑接口mock测试方法及系统有效
申请号: | 201810509752.9 | 申请日: | 2018-05-24 |
公开(公告)号: | CN108829584B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 汪辰;王良玉;张秋会 | 申请(专利权)人: | 携程计算机技术(上海)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 上海弼兴律师事务所 31283 | 代理人: | 薛琦;罗朗 |
地址: | 200335 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 业务 逻辑 接口 mock 测试 方法 系统 | ||
本发明公开了一种业务逻辑接口mock测试方法及系统,其中方法包括S1、接收业务逻辑接口的SOA请求,并从测试工具中返回所述业务逻辑接口对应的测试数据作为期望数据;S2、根据所述业务逻辑接口从分布式缓存中获取出所述业务逻辑接口对应的mock数据作为结果数据;S3、将所述结果数据与所述期望数据进行比较;S4、根据比较结果返回所述业务逻辑接口对应的断言,所述断言包括所述结果数据与所述期望数据匹配,或者所述结果数据与所述期望数据不匹配。本发明通过对业务逻辑接口进行mock测试,极大地提高了接口测试的效率和回归测试的复用率,降低管理数据的成本,缩短每次发布的时间。
技术领域
本领域涉及软件自动化测试技术领域,特别涉及一种业务逻辑接口mock(虚拟的)测试方法及系统。
背景技术
现有的接口自动化测试方法无法快速的构建和维护各种复杂逻辑场景的数据,并且通常验证接口返回的参数是通过XPath(一门在XML(可扩展标记语言)文档中查找信息的语言)路径等单一的验证方法,存在如下问题:算法和业务场景类接口由于强依赖的数据源构造步骤多,且数据源不稳定,导致自动化数据维护成本高,从而自动化执行失败率高;很难保证API(Application Programming Interface,应用程序编程接口)测试接口参数100%覆盖和较全面地覆盖接口的业务逻辑;很难灵活验证针对实际接口返回值多一个节点,少一个节点,或者给实际返回值增加白名单和黑名单从而有选择性的验证节点值的这些场景。这些问题都会导致自动化case(分支)执行效率低,同时对于接口返回报文的异常情况无法及时有效的感知和分析。
发明内容
本发明要解决的技术问题是为了克服现有技术中接口自动化测试无法快速的构建和维护各种复杂逻辑场景的数据,且自动化执行效率低,对于接口返回报文的异常情况无法及时有效的感知和分析的缺陷,提供一种业务逻辑接口mock测试方法及系统。
本发明是通过下述技术方案来解决上述技术问题:
本发明提供一种业务逻辑接口mock测试方法,其特点是,包括:
S1、接收业务逻辑接口的SOA(面向服务的架构)请求,并从测试工具中返回所述业务逻辑接口对应的测试数据作为期望数据;
S2、根据所述业务逻辑接口从分布式缓存中获取出所述业务逻辑接口对应的mock数据作为结果数据;
S3、将所述结果数据与所述期望数据进行比较;
S4、根据比较结果返回所述业务逻辑接口对应的断言,所述断言包括所述结果数据与所述期望数据匹配,或者所述结果数据与所述期望数据不匹配。
较佳地,步骤S3包括:
S31、解析所述结果数据,并将解析后的所述结果数据生成若干第一键值对存放于结果列表中,所述第一键值对包括第一节点和与所述第一节点对应的第一节点值;
S32、解析所述期望数据,并将解析后的所述期望数据生成若干第二键值对存放于期望列表中,所述第二键值对包括第二节点和与所述第二节点对应的第二节点值;
S33、将所述结果列表中的第一键值对与所述期望列表中的第二键值对逐一循环比较。
较佳地,步骤S33包括:
S331、从所述结果列表中获取一第一键值对作为目标键值对;
S332、判断白名单是否为空,若是则执行步骤S334,若否则执行步骤S333,所述白名单用于存放所述结果列表中需进行mock测试的键值对;
S333、判断所述目标键值对是否存在于所述白名单中,若是则执行步骤S335,若否则执行步骤S336;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于携程计算机技术(上海)有限公司,未经携程计算机技术(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810509752.9/2.html,转载请声明来源钻瓜专利网。