记一次jmeter的接口测试

记一次jmeter的接口测试

  • 本文记录的是本人测试加密签名接口的遇到的一些问题以及解决思路,将从以下几点讲述:
    1.背景
    1.目的
    2.踩坑
    3.解决思路

背景

最近一次生产的一个访问量大的接口崩掉了,导致系统崩溃。

目的

对系统接口进行带签名(每一次请求签名sign都不一样)的压力测试,确保接口在合理并发数下还能正常运行。

踩坑

1.测试工具
就压力测试工具而言有很多,但对于后台开发最友好的还是jmeter(我这里指的是并发量不大的接口测试)
2. 进坑
以前还是用过jmeter进行了一些简单测试的,但是还没有对一个接口进行过精细化压力测试(接口错误率,QPS这些)。
先在线程组下建立一个Http请求
记一次jmeter的接口测试_第1张图片动态传入请求参数必须先添加用户定义的变量元件记一次jmeter的接口测试_第2张图片,然后建立 BeanShell PreProcessor,随后可根据个人需求添加一些监听器。
踩坑过程,一开始以为BeanShell PreProcessor 的script脚本就是一个普通的java类,于是自己定义了Map变量,结果可想而知jmeter报错,原来sript脚本里的写法跟Java还是有区别的,script脚本里只能写成
final Map parameters = new HashMap(); 而不能带有泛型。
3. 解决思路
一开始的解疑思路不明确是因为对jmeter的引入jar包这一块的底层实现思路不是很了解,所以后来去GitHub上面稍微看了一下jmeter的对这一块的实现,从而发现了BP的脚本script写法和java的不同。

总结

解决一个问题可能并不难,难的是要养成对不同问题的解决思路,本文有不当之处请指正,大家共勉,谢谢!

你可能感兴趣的:(java接口压力测试)