一种基于低代码和FaaS模式创建和执行拨测的方法与流程

文档序号:35147519发布日期:2023-08-18 04:52阅读:58来源:国知局
一种基于低代码和FaaS模式创建和执行拨测的方法与流程

本发明属于互联网领域,特别是涉及一种基于低代码和faas模式创建和执行拨测的方法。


背景技术:

1、api网关是微服务架构沟通内外服务的重要桥梁,既可以将内部微服务接口暴露给外界用户使用,也可以将外部第三方服务进行封装供内部微服务调用。需要定时进行健康度拨测和并发压力拨测,以监控各个服务是否可以满足用户需求。如果是运营商这种巨型公司,可能依赖成千上万种内外部服务。因为数量巨大,如果使用代码编写拨测用例,成本巨大;如果使用基于低代码的api网关,加上postman脚本,需要使用者熟悉两套系统,并分别开发。如果几千个接口串行执行方式,耗时过长。同时需要一定的灵活性和智能性,而不是按照完全一样的范围进行拨测。并且拨测功能属于一次性功能,没有必要长期维持运行实例。因此,迫切需要一种智能拨测方法来满足需要。


技术实现思路

1、为实现上述目的,本发明提供了如下方案:一种基于低代码和faas模式创建和执行拨测的方法,包括:

2、用户通过低代码前端编辑生成静态拨测方案并存储在数据库中;

3、拨测请求客户端发起拨测请求,请求中含有用户输入或者自动生成一个uuid,作为后续结果查询的关键字;

4、所述拨测请求被最终发送至faas控制器,所述faas控制器部署并调用智能拨测方案生成功能,基于不同的拨测请求类型,调取存储的静态拨测方案或者生成动态拨测方案,返回给所述faas控制器,之后智能拨测方案生成功能自动销毁;

5、所述faas控制器部署拨测网关功能,传入所述uuid以及拨测方案,拨测网关对http接口进行拨测并将已传入的所述uuid作为key,将拨测统计结果记录到数据库;

6、拨测结束后,所述拨测网关将拨测统计结果传递至所述faas控制器,所述faas控制器关闭拨测网关功能,并将所述拨测统计结果发送至拨测请求客户端;所述拨测请求客户端展示所述拨测统计结果,并允许从数据库中读取详细结果并进行展示。

7、优选地,所述拨测请求包括普通全量拨测、手工制定范围拨测、对规定时间内失败的http服务发起拨测、对规定label对应的http服务发起拨测、普通全量并发性能拨测、手工制定范围并发性能拨测、对规定时间内失败的http服务发起并发性能拨测、对规定label对应的http服务发起并发性能拨测。

8、优选地,所述静态拨测方案或者动态拨测方案基于原子api单元、flow单元、schedule单元完成;

9、其中,所述原子api单元为完成单一功能的最小单元;

10、所述flow单元是将一串相关的原子api单元或者其他flow单元串行执行的单元;

11、所述schedule单元用于向flow单元或者httapi单元传入测试参数,还用于并发执行以及并发压力拨测。

12、优选地,所述原子api单元包括httpapi单元,所述httpapi单元用于定义如何对外发送http请求以及如何设置http报文中的参数;

13、所述http请求参数至少包括目的url、请求类型;

14、所述报文中的参数数值既支持固定值,也支持从用户请求的json数据映射。

15、优选地,所述原子api单元还包括其他功能性api单元;

16、所述其他功能性api单元包括数据库api单元、promthus api单元;

17、其中,所述数据库api单元用于将至少包括调用时间、名称、uuid、结果、处理时间写入数据库;

18、所述promthus api单元用于promethus统计值。

19、优选地,所述原子api单元还包括辅助类api单元;

20、所述辅助类api单元用于包括字符串类检查,所述字符串类检查用于包括检查返回值200ok时,http body中json内嵌错误码不为0的情况。

21、优选地,所述schedule单元包括并发执行单元、并发压力拨测单元;

22、所述并发执行单元用于将多个无关的httpapi或者flow定义成一个任务列表,并且允许多个任务并行运行;

23、所述并发压力拨测单元用于对同一个httpapi或者flow,同时并发多个请求,当一个请求完成后,自动开启另一个请求,直到完成规定请求次数,测试一段时间内是否能持续满足并发性要求。

24、优选地,基于不同的拨测请求类型,调取存储的静态拨测方案或者生成动态拨测方案,返回给所述faas控制器的过程包括,

25、若拨测请求是普通全量拨测,直接将全量静态拨测方案返回给faas控制器;

26、若拨测请求是手工制定范围拨测,将全量静态拨测方案读入,只保留手工范围指定的任务,生成新的动态拨测方案,返回给faas服务器;

27、若拨测请求是对规定label对应的http服务发起拨测,则根据数据库中flow或者httpapi中的label进行自动筛选,生成新的动态拨测方案,返回给faas服务器。

28、优选地,若拨测请求是对规定时间内失败的http服务发起拨测,则将全量静态拨测方案读入,将失败http服务从数据库中读出,只保留匹配项,生成新的动态拨测方案,返回给所述faas控制器;

29、所述数据库中的失败http服务是指通过普通客户端发起http请求,到达api网关,所述api网关将所述http请求路由到http服务端,同时所述api网关将执行结果记录到所述数据库;所述执行结果至少包括调用用户、开始时间、持续时间、是否成功。

30、与现有技术相比,本发明的有益之处在于:

31、本发明提供的一种基于低代码和faas模式创建和执行拨测的方法,基于已成熟的低代码api网关,扩展出一套低代码拨测平台,做到一套系统,两种用途。将拨测所用的数据和控制逻辑放在脚本文件中,通过低代码前端让使用者进行编辑。支持多个接口并行执行用于加快执行速度,支持循环加并行的方式执行并发压力拨测。既能支持全量执行,也支持手工挑选和智能自动挑选方式进行拨测。最后采用faas(function as a service)的无服务器方式进行触发执行和自动关闭。通过引入并行执行的能力,大大缩短了拨测的测试时间;通过引入对单接口的循环加并行执行能力,引入了并发压力拨测的解决方案;通过低代码gui前端作为测试方案的编写平台,更适合测试运维人员添加修改,解放了研发人员。通过基于faas的无服务模式触发,只在使用时部署,平时不占用系统资源。通过引入了一定的智能型,如可以手工制定,或者根据label自动选取,或者自动选择一定时间内有错误发生的http接口进行拨测,简化了用户操作。



技术特征:

1.一种基于低代码和faas模式创建和执行拨测的方法,其特征在于,包括:

2.根据权利要求1所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

3.根据权利要求1所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

4.根据权利要求3所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

5.根据权利要求3所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

6.根据权利要求3所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

7.根据权利要求3所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

8.根据权利要求2所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,

9.根据权利要求2所述的基于低代码和faas模式创建和执行拨测的方法,其特征在于,


技术总结
本发明公开了一种基于低代码和FaaS模式创建和执行拨测的方法,包括:用户在低代码前端构建静态拨测方案,存储在数据库中供拨测时直接调用;拨测请求客户端发起拨测请求最终到达FaaS控制器;FaaS控制器部署并调用智能拨测方案生成功能,基于不同的拨测请求,调取存储的静态拨测方案或者生成动态拨测方案返回给FaaS控制器;FaaS控制器部署拨测网关对被测试HTTP服务进行拨测,拨测结束,FaaS控制器关闭拨测API网关,并将拨测统计结果发送至拨测请求客户端进行展示。本发明通过引入并行执行的能力,缩短了拨测的测试时间,通过引入对单接口的循环加并行执行能力,引入了并发压力拨测的解决方案,简化了用户操作。

技术研发人员:王斌,杨戉,盛振明,夏建明,颜凤辉
受保护的技术使用者:中电信数智科技有限公司
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1