一、多个真实用户对接口的压力测试

1. 获取多个真实用户的token的两种方法:

1)第一种:让开发帮忙生成多个token(多个用户账户生成的token),导出为csv格式的文件(以下步骤均以该方法为基础)

2)第二种:自己设置多个用户账户和密码,并存储于txt文件中,文件名称叫:login.txt(使用详情见步骤三)

2. 新建线程组,并根据需求设置”线程数“和”时间“

3. 在线程组下创建HTTP Header Manager,并设置信息头中的参数和值

1)该信息头放在了线程组下面,所以是针对该线程组下所有的接口;

2)不是所有的请求都需要设置信息头。若后端需要一些验证信息,比如“app的版本号”,“token”等,需要HTTP Header Manager 来保证发送HTTP请求的正确,否则是不需要的。

3)接口发送请求时,需要获取登录接口返回的token值,用”${token}“引入该变量

4)token变量的值取自步骤1中的csv文件,如何设置,请看步骤4

4. 在线程组下添加CSV数据文件设置

1)从本地添加带有token信息的csv文件、设置文件编码为”UTF-8“

2)变量名称设置为”token“,方便信息头调用

5. 添加http请求

1)设置协议、服务器名称、端口号、方法和路径(用charles等工具抓包即可得到接口信息)

6. 添加查看结果树和汇总报告,运行后查看结果

二、模拟单个用户获取token并应用在其他接口

1. 在登录接口请求下添加"JSON Extractor",设置变量名、接口响应数据中字段名

2. 把步骤1中的变量名应用于其他需要该变量的接口中即可,比如图中的asset_main接口的headers中

3. 用Debug Sampler检查变量的值是否取到,在察看结果树中查看“登录”和“Debug Sampler”中的值

三、模拟多个用户获取token并应用在其他接口

1. 创建login.txt文件,并在CSV Data Set Config中选择该文件所在路径

2. 把登录接口中的用户账户和密码参数化,名称与CSV Data Set Config中保持一致

3. 在其他接口中的应用和步骤二一样,用户账户和密码的调用是按照顺序从上到下,可以在“察看结果树”中查看多个登录接口的请求参数phone_number(对应变量account)和password

四、绝对并发、多场景混合并发

1. 使用Synchronizing Timer(同步定时器)实现绝对并发

1)Number of Simulated Users to Group by(集合点数):集合到对应的用户量才发送请求,设置的值不能大于线程数

2)Timeout in milliseconds(等待超时时间,毫秒):在指定的毫秒时间内没有达到集合点数,将停止等待直接发送请求

3)未使用Synchronizing Timer实现的相对并发(10s运行500个进程),在“用表格察看结果”处察看接口请求开始时间。从图中可以看出,用户在某个时间段内的随机一个时间点去执行,属于相对并发。

4)使用Synchronizing Timer实现的绝对并发(10s运行500个进程),在“用表格察看结果”处查看接口请求开始时间。从图中可以看出,集合到3个用户才发送请求,做到了绝对并发。

2. 多场景混合并发测试:

1)在线程组下面(各个接口上面),添加多个吞吐量控制器(Throughput Controller)

2)设置总线程数为20,“get_current_price_01”接口的线程数占比为30%,“get_current_price_02”接口的线程数占比为70%

3)运行后,查看“View Results Tree”和“汇总报告”。从“View Results Tree”可看出两个接口是混合并发的;从“汇总报告”可看出接口占比的分别为30%和70%

五、测试报告生成

命令:[jmeter.bat路径] -n -t 财富接口.jmx -l financial.csv -e -o financial

推荐阅读

  • 【JVM】类加载、连接和初始化过程

  • 2018全套学习视频资源已经整理好了!免费分享!

  • 【资源分享】Docker核心技术视频教程

  • 【资源分享】蚂蚁课堂2期无加密-Java视频教程

  • Java日志体系详细总结

  • 【资源分享】Spring Cloud微服务实战视频课程

  • 2020传智-黑马Python全系列课程

  • 详解BlockingQueue

  • Springmvc源码解析总结

  • 老男孩教育-Linux中高级运维-58期

微信:YuanMing1510

本公众号会不定期给大家发福利,包括学习资源等,敬请期待吧!

推送内容如果现在工作用不上,可以先转发朋友圈或收藏,用的时候方便找。

另外欢迎关注公众号添加微信好友,互相学习交流。

jmeter压力测试_用Jmeter实现对接口的压力测试相关推荐

  1. java 压力测试_使用 JMeter 完成常用的压力测试

    讲到测试,人们脑海中首先浮现的就是针对软件正确性的测试,即常说的功能测试.但是软件仅仅只是功能正确是不够的.在实际开发中,还有其它的非功能因素也起着决定性的因素,例如软件的响应速度.影响软件响应速度的 ...

  2. jmeter 加密解密_使用Jmeter对SHA1加密接口进行性能测试

     机会只留给那些有准备的人 改变能改变的,接受不能改变的,就是进步 性能测试过程中,有时候会遇到需要对信息头进行加密鉴权,下面我就来介绍如何针对SHA1加密鉴权开发性能测试脚本  1.首先了解原理,就 ...

  3. jmeter性能测试报告_用 JMeter 做接口测试的优劣浅析

      2018年由软件质量报道做的调查报告表明,受调查的测试人员中约有40.67%的人使用JMeter作为接口测试的自动化测试工具(排在商业化或者开源工具中的第一),剩下的为Postman(28%),以 ...

  4. jmeter java性能_使用JMeter进行性能测试(Java请求)

    来源:http://wangym.iteye.com/blog/731729 看了两篇如何使用JMeter在HTTP请求及数据库方面做性能测试的文章(如下两个链接),感受到这款工具的强大及易用.我在这 ...

  5. 型人格 disc测试_什么是压抑型人格,如何测试筛查压抑型人格?

    一. 什么是压抑型人格 压抑型人格是一种非常病态的社会人格,在面对挫折和困难的时候,压抑型人格者不能很好的疏解自己内心的不良情绪,他们会将这种负面情绪压抑起来,而不是将其释放出来.虽然这种压抑可以短暂 ...

  6. 大数据综合能力测试_如何完成大数据测试?资深测试从功能测试角度为你分析分析...

    大数据,已经成为了这个时代的代名词.当今的互联网属于大数据时代,大数据时代的到来,颠覆了以往对数据的惯性思考方式,要保证数据执行,软件质量,测试质量,数据使用场景等,都需要重新变换一个新的角度,对软件 ...

  7. jmeter异步请求测试_使用JMeter对异步HTTP / REST服务进行压力/负载测试

    jmeter异步请求测试 尽管我一直在使用JMeter进行Web应用程序的压力测试和负载测试好几次,但我们还是花了一些时间才弄清楚如何使用该工具测试基于异步HTTP / REST的服务. 对我们来说, ...

  8. jmeter性能分析_使用JMeter和Yourkit进行REST / HTTP服务的性能分析

    jmeter性能分析 我的上一篇文章描述了如何使用JMeter完成异步REST / HTTP服务的压力测试或负载测试. 但是,运行这样的测试通常表明被测系统不能很好地应对增加的负载. 现在的问题是如何 ...

  9. jmeter csv参数化_运用Jmeter参数化来实现接口自动化测试

    本文记录如何使用Jmeter参数化(csv)实现接口自动化--测试Token不同入参情况下,接口请求能够返回正确的结果 1. 首先需要使用Jmeter获取一个Token,如何获取暂略(同一般访问请求方 ...

最新文章

  1. 教程 | 用AI生成猫的图片,撸猫人士必备
  2. CentOS学习笔记 - 4. 修改端口和禁止root登录
  3. 硬分叉升级越来越近,BCH社区都在做什么?
  4. Android热补丁之Robust(三)坑和解
  5. 【学习笔记】 Javascript定时器
  6. python列表存储字符串_Python 基础知识全篇-字符串列表
  7. C# combobox SelectedText值为空
  8. JavaWeb——mybatis模糊查询与主键返回
  9. python,numpy中np.random.choice()的用法详解及其参考代码
  10. 跟踪算法原理_「综述」目标跟踪算法
  11. “鉴别服务开创者”沦为笑柄?裁判文书曝出得物APP无法鉴别真伪
  12. 大数据之道 HMM系列
  13. 房产“去库存”释放需求 集成灶市场待挖掘
  14. 【springboot】sse接口
  15. 学python编程,自学好还是应该报个培训班呢?
  16. 遭遇Trojan DL Multi wfg sss exe SCVHOST EXE autorun inf 等
  17. python爬取练习 名侦探柯南剧集信息——各集列表
  18. Smith(史密斯)数的求法
  19. RecyclerView源码剖析
  20. 浪潮服务器kvm安装系统2021,浪潮服务器KVMoverIP使用方法

热门文章

  1. 一网打尽中文编码转换---6种编码30个方向的转换
  2. 互联网商业模式:增值还是减值?
  3. eclipse快速定位到错误处
  4. 关于openstack 专业博主地址.后续更新
  5. Python冒泡排序(4)
  6. 回文数-时间变换-判断邮箱
  7. VirtualBox安装Centos6.8出现——E_INVALIDARG (0x80070057)
  8. POJ 1149 最大流建图 PIGS
  9. 回顾小程序2018年三足鼎立历程,2019年BAT火力全开
  10. linux基础命令(-)