本技术涉及通信技术测试领域,具体而言,涉及一种压力测试方法及装置。
背景技术:
1、压力测试是基于sip(session initialize protocol)服务开发的一项重要内容,一般包括注册压力测试、呼叫压力测试等。
2、sipp是面向sip系统的压力测试的最主流工具,功能强大,能够覆盖所有的压力测试场景,也能构造各种sip测试场景做功能、兼容性、稳定性、健壮性测试。
3、sipp工具实现了ua(user agent,sip用户代理)功能,然后ua调用测试场景xml文件,来模拟sip呼叫中的主叫和被叫,如果xml文件描述的是呼叫发起方的sip信令流程,那么就是主叫uac(user agent client),如果xml文件描述的是呼叫接收方的sip信令流程,那么就是被叫uas(user agent server),通过场景xml文件,可以实现各种复杂的测试场景,覆盖测试的方方面面,此外,通过csv文件方式可以批量注入数据如呼叫号码、分机号码等,sipp通过ua机制调用xml文件,并通过csv文件数据注入,以及各类参数配置,实现各种sip测试场景,sipp内置了一些xml文件和csv文件,提供了标准化的呼叫测试,如果需要定制测试场景,则需要自己编写xml文件和csv文件。
4、因此,sipp工具使用较为复杂,需要掌握sip协议相关知识,了解很多配置参数,尤其是编写自定义测试xml文件,需要熟悉sip信令细节以及sip呼叫流程细节以及sipp的测试流程,这提高了sipp的使用门槛,增加了sip压力测试的难度。
技术实现思路
1、有鉴于此,本技术的目的在于提供一种压力测试方法及装置,降低sipp的使用门槛,方便sipp工具的使用,减少sip压力测试的难度。
2、本技术实施例提供的一种压力测试方法,包括:
3、通过终端设备提供一图形用户界面,所述图形用户界面上显示测试文本模板;所述测试文本模板中包括多个不同的sip测试场景、每个sip测试场景对应的配置参数;不同的sip测试场景对应不同的sipp工具模板;
4、响应基于测试文本模板的输入操作,确定目标sip测试场景和目标sip测试场景对应的目标配置参数;
5、基于所述目标配置参数更新与目标sip测试场景对应的sipp工具模板中的模板配置参数,得到匹配目标sip测试场景的、配置好的目标sipp工具;
6、执行所述目标sipp工具,获取目标sip测试场景的sip测试结果。
7、在一些实施例中,所述的压力测试方法中,每一配置参数对应显示目标语种的文字解释和输入提示;
8、响应针对测试文本模板的输入操作,确定目标sip测试场景和目标sip测试场景对应的目标配置参数,包括:
9、响应针对测试文本模板的输入操作,输入目标测试场景,确定目标测试场景;
10、基于配置参数对应的文字解释和输入提示,输入目标配置参数,确定目标配置参数。
11、在一些实施例中,所述的压力测试方法中,sipp工具模板包括:sipp测试命令模板、匹配目标sip测试场景的标准xml文件以及标准csv文件;
12、基于所述目标配置参数更新与目标sip测试场景对应的sipp工具模板中的模板配置参数,得到匹配目标sip测试场景的、配置好的目标sipp工具;包括:
13、基于至少部分目标配置参数替换所述匹配目标sip测试场景的标准xml文件中的对应字段,得到匹配目标sip测试场景的、配置好的目标xml文件;
14、基于至少部分目标配置参数替换所述匹配目标sip测试场景的标准csv文件中的对应字段,得到匹配目标sip测试场景的、配置好的目标csv文件;
15、基于至少部分目标配置参数设置所述sipp测试命令模板中对应选项的值,得到配置好的目标sipp测试命令;
16、基于所述目标xml文件、目标csv文件、目标sipp测试命令,得到目标sipp工具。
17、在一些实施例中,所述的压力测试方法中,所述sipp测试命令模板对应的至少部分目标配置参数,是通过以下方式得到的:
18、获取包括目标配置参数的测试文本模板;
19、通过预先配置好的正则过滤规则,从所述包括目标配置参数的测试文本模板中过滤出所述sipp测试命令模板对应的至少部分目标配置参数。
20、在一些实施例中,所述的压力测试方法中,在基于所述目标配置参数更新与目标sip测试场景对应的sipp工具模板中的模板配置参数之前,所述方法还包括:
21、获取sipp测试中的配置参数以及每一配置参数对应的、目标语种的文字解释;
22、基于所述配置参数以及该配置参数对应的文字解释,配置所述测试文本模板。
23、在一些实施例中,所述的压力测试方法中,执行所述目标sipp工具,获取目标sip测试场景的sip测试结果,包括:
24、执行目标sipp测试命令,读取目标csv文件的测试数据,并将读取的测试数据传递给目标xml文件;
25、执行目标xml文件,获取目标sip测试场景的sip测试结果。
26、在一些实施例中,所述压力测试方法中,所述目标配置参数包括控制所述目标sipp工具的测试行为的目标负载测试参数;所述目标负载测试参数为目标sipp工具中的目标xml文件所需的参数;所述目标负载测试参数包括:目标测试总量、目标并发参数、目标呼叫参数、目标日志保存参数;
27、执行所述目标sipp工具,获取目标sip测试场景的sip测试结果,包括:
28、执行所述目标sipp工具,按照所述并发参数、呼叫参数执行所述目标sipp工具的测试行为,获取目标sip测试场景在目标负载测试参数下的sip测试结果;
29、基于所述日志保存参数对所述目标sip测试场景在目标负载测试参数下的sip测试结果进行保存处理。
30、在一些实施例中,所述压力测试方法中,按照所述并发参数、呼叫参数执行所述目标sipp工具的测试行为,包括:
31、基于所述并发参数中的并发上限参数、达到并发上限的行为参数,确定所述目标sipp工具的在达到并发上限参数的测试行为;所述达到并发上限参数的测试行为包括以下之一:退出测试、继续保持并发上限进行测试、减少并发进行测试、从初始并发开始进行循环测试。
32、在一些实施例中,所述压力测试方法中,执行所述目标sipp工具,获取目标sip测试场景的sip测试结果后,所述方法还包括:
33、获取目标配置参数对应的sip测试结果后,在所述图形用户界面上显示更新后的测试文本模板;所述更新后的测试文本模板上显示有之前输入的目标测试参数,和/或之前未显示的稀有配置参数;
34、基于更新后的测试文本模板,更新目标配置参数,并基于更新后的目标配置参数得到更新后的目标sipp工具;
35、执行所述更新后的目标sipp工具,获取目标sip测试场景在不同测试行为下的sip测试结果。
36、在一些实施例中,还提供一种压力测试装置,所述装置包括:
37、显示模块,用于通过终端设备提供一图形用户界面,所述图形用户界面上显示测试文本模板;所述测试文本模板中包括多个不同的sip测试场景、每个sip测试场景对应的配置参数;不同的sip测试场景对应不同的sipp工具模板;
38、确定模块,用于响应基于测试文本模板的输入操作,确定目标sip测试场景和目标sip测试场景对应的目标配置参数;
39、更新模块,用于基于所述目标配置参数更新与目标sip测试场景对应的sipp工具模板中的模板配置参数,得到匹配目标sip测试场景的、配置好的目标sipp工具;
40、执行模块,用于执行所述目标sipp工具,获取目标sip测试场景的sip测试结果。
41、本技术实施例中,提供一种压力测试方法及装置,所述方法通过终端设备提供一图形用户界面,所述图形用户界面上显示测试文本模板;所述测试文本模板中包括多个不同的sip测试场景、每个sip测试场景对应的配置参数;不同的sip测试场景对应不同的sipp工具模板;响应基于测试文本模板的输入操作,确定目标sip测试场景和目标sip测试场景对应的目标配置参数;基于所述目标配置参数更新与目标sip测试场景对应的sipp工具模板中的模板配置参数,得到匹配目标sip测试场景的、配置好的目标sipp工具;执行所述目标sipp工具,获取目标sip测试场景的sip测试结果;本技术实施例基于文本交互方式封装了专业的sipp测试工具,屏蔽了繁琐的命令选项、测试场景xml文件和数据文件,提供容易理解的描述文本形式显示一个标准的测试文本模板,用户基于这个模板只需要更改默认值,就可以构造自己的测试请求消息,并自动完成sipp测试命令的构造和执行,方便了sipp工具的使用,用户只需要具备基本的测试知识即可使用所述压力测试方法完成sip测试。