08-02 性能测试--负载模型与压力来源
JDK 中的提供的监听工具
Windows 系统下,Java 进程最多能启动 1000 个线程
Linux 系统下,Java 进程最多能启动 2000 个线程
JMeter 线程组
其中线程属性(体现的是压力预期,实际结果在聚合报告中查看)中:
- ramp up:预期线程加载时间,如图中,预期1秒内启动10个线程,最终使用的时间以右上角的时间为准;ramp up=0:表示瞬间加压,线程启动时间无线趋近于0,负载测试时,尽量将其设置大一些,让性能曲线平缓,分析瓶颈点
- 循环次数:线程的迭代次数/重复发起请求的次数;若循环次数有固定值,持续时间不会生效,以循环次数为准
调度器配置中:
- 持续时间:需要将循环次数设置为永远,持续时间才会生效
压力来源
基于协议发起请求,模拟用户真实操作,向系统施加压力
HTTP请求
入参形式
一般入参形式是固定的,需要与接口文档进行核对
- 表单形式
- json形式(表单与json,两种入参形式只能选其一)
- url拼接
Advanced
如果存在某些接口,并发数量过大容易发生堵塞,可以设置超时时间直接抛出错误,执行下一个请求,
防止请求堵在队列中,影响后续流程
勾选“从HTML文件获取所有内涵的资源”,请求会把所有的静态资源加载进去
JMeter 抓包
相关工具:XmfBrowser
链接:https://pan.baidu.com/s/1FI6Q...
提取码:7xsz
JMeter 内的操作:
- 添加 HTTP 代理服务器
- 设置代理服务器
- 设置请求过滤
- 启动代理,然后再浏览器工具中设置代理端口,按实际业务进行操作
- 在抓取的接口中,选择有用的移动到对应事务的线程组中
压力监听
主要监听响应时间、TPS、活动线程、HPS、响应时间比例
常用监听器:
JDK 下的监听工具:
- 位置:jdk/bin/jconsole.exe
使用浏览器进行录制脚本时,相关的设置:
第一种方式:配置电脑网络代理(不推荐,会代理所有浏览器请求)
第二种方式:使用浏览器插件--SwitchyOmega(推荐)
使用步骤:
机智的测试生活
双非大龄青年,转行测试工程师。 分享测试工程师的职业经验, 提供付费转行咨询
推荐阅读
转正实录|陪你走一段路
转行的第一喜事,当然是收到Offer啦~拿到Offer的那一天,我松了一口气,算是实现了一个小目标。但我又意识到,接下来,游戏要升级了,即将要面临试用期的考验。
机智的测试生活阅读 491
一文教会你mock(Mockito和PowerMock双剑合璧)
Mock有模仿、伪造的含义。Mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。mock工具使用范畴:
京东云开发者赞 2阅读 393评论 1
源码学习之 Spring 容器创建原理
众所周知,Spring可以帮我们管理我们需要的bean。在我们需要用到这些bean的时候,可以很方便的获取到它,然后进行一系列的操作。比如,我们定义一个bean MyTestBean。
京东云开发者赞 3阅读 466
测试自动化中遵循的最佳实践
现在的企业从以往一年、一个月、一周交付,逐渐转变为开始关注两到三天甚至一天内交付。软件自动化测试的出现及其与手动测试的结合使得这种时长的交付成为可能。
陈琦赞 3阅读 522评论 1
一个漏测Bug能让你想到多少?
漏测Bug是指产品逻辑缺陷在测试过程中没有被发现(尤其是测试环境可以重现的缺陷),上线版本发布后或者在用户使用体验后发现并反馈回来的缺陷。可能造成线上故障或者资损,在对产品测试过程中,自己也难免出现一...
得物技术阅读 989评论 1
重写 Nacos 服务发现:多个服务器如何跨命名空间,访问公共服务?
这就意味着只需部署一个应用,就能满足所有测试环境的需求;也意味着所有测试环境都需要调用该公共应用,而不同测试环境的应用注册在不同的 Nacos 命名空间。
LigaAI阅读 640
结合 API & DaaS,让使用数据更方便
Eotalk 是由 Eolink CEO 刘昊臻发起的泛技术聊天活动,每期都会邀请一些技术圈内的大牛聊聊天,聊些关于技术、创业工作、投融资等热点话题。
Eolink阅读 608
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。