[发明专利]一种基于接口的线上验证方法和装置在审
| 申请号: | 201711108400.4 | 申请日: | 2017-11-09 |
| 公开(公告)号: | CN109766228A | 公开(公告)日: | 2019-05-17 |
| 发明(设计)人: | 徐晓 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F11/22 | 分类号: | G06F11/22 |
| 代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 张一军;杨晓伟 |
| 地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 验证 接口功能 外部文件 脚本 服务器 读取 方法和装置 脚本执行 外层循环 计算机技术领域 测试 内层循环 内外两层 循环控制 读入 写入 | ||
本发明公开了一种基于接口的线上验证方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:将各接口所属的所有服务器的IP地址、接口入参和接口功能测试用例写入外部文件中;运行压测工具,将外部文件中与各接口的各方法的接口入参和接口功能测试用例读入到不同的验证脚本中;其中,在所述压测工具中设置用于控制各IP地址读取的外层循环和控制所述验证脚本执行次数的内层循环;通过外层循环每次读取外部文件中的一个IP地址,根据验证脚本执行次数执行IP地址对应接口的所有验证脚本。该实施方式基于压测工具和内外两层循环控制,逐台服务器去执行相同的验证脚本,完成了对所有服务器的接口功能验证。
技术领域
本发明涉及计算机领域,尤其涉及一种基于接口的线上验证方法和装置。
背景技术
当下大型互联网应用都是集群部署,集群多是由Docker搭建而成。在应用程序发布后,需要验证每一台Docker上的应用部署是否正确、功能是否正常以及性能是否存在问题。现有技术中通过在Web端调用接口来对Web测试对象进行自动化测试,以实现接口功能验证和性能验证。在调用接口时,由分发中心将调用请求随机打到任意一台Docker上进行处理。这里的Docker为一种虚拟服务器。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:应用程序发布后,无法验证每一台Docker上的应用部署是否正确、功能是否正常以及性能是否存在问题;Web端的脚本维护困难且运行不稳定;集群中的Docker多则几百台,少则几十台,Docker本身的性能参差不齐,无法排查出性能差的Docker。
发明内容
有鉴于此,本发明实施例提供一种基于接口的线上验证方法和装置,基于压测工具和内外两层循环控制,逐台服务器去执行相同的验证脚本,完成了对所有服务器的接口功能验证。
为实现上述目的,根据本发明实施例的一个方面,提供了一种基于接口的线上验证方法。
本发明实施例的一种基于接口的线上验证方法,包括:将各接口所属的所有服务器的IP地址、接口入参和接口功能测试用例写入外部文件中;运行压测工具,将所述外部文件中与各接口的各方法相对应的接口入参和接口功能测试用例读入到不同的验证脚本中;其中,在所述压测工具中设置用于控制各所述IP地址读取的外层循环和控制所述验证脚本执行次数的内层循环;通过所述外层循环每次读取所述外部文件中的一个IP地址,根据所述验证脚本执行次数执行所述IP地址对应接口的所有验证脚本。
可选地,所述将所述外部文件中各接口的一个方法的接口入参和接口功能测试用例读入到一个验证脚本中,包括:通过所述压测工具的参数化处理将所述外部文件与所述压测工具进行关联;通过所述压测工具读取所述外部文件,以将所述外部文件中与各接口的各方法相对应的接口入参和接口功能测试用例读入到不同的验证脚本中。
可选地,所述根据所述验证脚本执行次数执行所述IP地址对应接口的所有验证脚本的步骤之后,还包括:获取各接口的验证结果,根据所述验证结果中各接口的接口功能测试用例执行结果,得到各接口的功能验证结果;汇总各接口的响应时间,将所述响应时间与原应用程序各接口的响应时间进行比对,得出各接口的性能验证结果;归纳各服务器上所有接口的性能验证结果,以根据归纳结果分析获得各服务器之间的性能差异。
可选地,所述外层循环的循环次数等于所述服务器的个数,所述脚本执行次数大于等于所述接口功能测试用例个数。
可选地,所述压测工具为Jmeter,所述外部文件为文本文件,所述服务器为Docker虚拟服务器。
可选地,所述外层循环的循环次数通过所述Jmeter的线程组设置,所述内层循环次数通过所述Jmeter的循环控制器设置。
为实现上述目的,根据本发明实施例的另一方面,提供了一种基于接口的线上验证装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711108400.4/2.html,转载请声明来源钻瓜专利网。





