![](https://img-blog.csdnimg.cn/20190902174141941.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
性能测试
文章平均质量分 78
TesterAllen
理想还很远,但今天你努力了吗?学的越多,会的越少
展开
-
基于电商模式的性能测试(六)-基于Jmeter"Ultimate Thread Group"插件完成梯度递增场景的压测
从Thread Group中看,我们的Thread会在某个时间点同时起多个,而日常场景中我们需要的可能是一个递增的梯度加压的方式为了实现梯度递增,我们就需要借助于插件Ultimate Thread Group在实际的测试中,可能还需要设置触发点,假如请求的响应时间过长,错误率过大,已经没有测试的必要了后自动停止测试,这个时候就可以借助另外一个插件——AutoStop Listener原创 2020-03-12 11:41:06 · 1045 阅读 · 0 评论 -
基于电商模式的性能测试(五)-基于Jmeter完成一次日常典型电商场景的压测(下单-支付)
本文是接着前一篇的基础上,继首页浏览业务完成后,开始下单-支付场景的学习实践,具体可参考文章:基于电商模式的性能测试(四)-基于Jmeter完成一次日常典型电商场景的压测(首页浏览)1、分布拆解1.1 POST /cart/add1.1.1 接口分析在电商购物场景中,最为常见和典型的就是添加购物车了,按照之前选定的接口,来看看添加购物车接口POST /cart/add的情况从接口...原创 2020-03-12 11:32:23 · 3297 阅读 · 4 评论 -
基于电商模式的性能测试(四)-基于Jmeter完成一次日常典型电商场景的压测(首页浏览)
1、前期准备1.1 场景预设之前的测试中单独抽离出了一个注册登录的场景,而实际的电商场景中,绝大多数都是已经登录并保持登录状态的,用户的登录信息可能被保存在浏览器的cookie中或在App的localstorage中,更多的是拿到现有的cookie去做验证;因此这里在默认用户登录状态下抽离出一个典型的电商场景,浏览首页-添加商品-下单结算,涉及到的接口如下:1)浏览首页2)增加浏...原创 2020-03-10 10:21:59 · 2138 阅读 · 1 评论 -
基于电商模式的性能测试(三)-以Docker+Jmeter+InfluxDB+Grafana的形式搭建性能监控平台
1、需求1.1 需求背景在用Jmeter获取性能测试结果的时候,Jmeter本身带有聚合报告如下这个报告有几个很明显的缺点:只能自己看,无法实时共享;报告信息的展示比较简陋单一,不直观;1.2 需求方案为了解决上述问题就请出了InfluxDB+Grafana:InfluxDB:持续型数据库,有时间戳组件,以时间的形式去存储数据Grafana:一款采用 go 语言编写的开源...原创 2020-03-08 15:18:52 · 939 阅读 · 0 评论 -
基于电商模式的性能测试(二)—使用Jmeter参数化功能+JSR223 PreProcessor+JSON Extractor完成注册登录的数据驱动
1、前置条件此例使用的是GitHub上一个开源的电商项目mall,需要的可以去GitHub上下载部署,有详细的部署教程:GitHub地址:https://github.com/macrozheng/mall部署教程:https://macrozheng.github.io/mall-learning/#/README2、场景抽离首先要对需要测试的场景进行抽离,明确场景的接口、参数和...原创 2020-03-02 19:55:16 · 1266 阅读 · 1 评论 -
基于电商模式的性能测试(一)—基础知识铺垫
1、总览1.1 测试步骤总览需求分析与测试设计(性能需求目标+业务模型拆解)测试数据准备和构造(基于模型的数据准备)性能指标预期(性能需求目标)发压工具配置及脚本编写(压力策略)测试过程(预计的前置准备过程和压测时间点规划)结果分析与测试报告1.2 测试模型分析如下的测试模型来简单的说明测试中需要关注的点和测试的目的字段说明:1、横轴代表并发数,也就对应着Jmet...原创 2020-03-02 15:08:43 · 1749 阅读 · 0 评论 -
测试工作常用Linux shell命令-top与ps命令统计某进程CPU、MEM以及grep --line-buffered的应用
先来看ps命令,通过ps -aux 可以查看到进程的CPU和MEM等信息:USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.3 191808 3764 ? Ss 2018 2:44 /usr/lib/systemd/systemd...原创 2019-09-09 00:08:26 · 2743 阅读 · 4 评论 -
测试工作常用Linux shell命令-shell输入输出、文件/网络/性能
文件Linux中,everything is file查询帮助文档:man可对任何命令查看帮助文档,比如man ls磁盘:dfdf -f :查看磁盘信息[16210504@izuf60jasqavbxb9efockpz ~]$ df -h文件系统 容量 已用 可用 已用% 挂载点/dev/vda1 40G 37G 633M 99%...原创 2019-08-30 15:56:14 · 294 阅读 · 0 评论 -
性能测试-Jmeter如何做分布式压测(基于Docker)
jmeter是一款用Java开发的开源测试工具,可以用来做做服务端的性能测试,对接口发压;但是GUI界面仅仅是为了调试方便,真正测试时图形界面会大大影响软件自身性能,所以我们测试时应适应命令行启动的方式,如下在启动jmeter时会出现的信息:上述可见,官方建议我们使用jmeter -n -t [jmx file] -l [results file] -e -o [Path to web r...原创 2019-08-19 09:13:04 · 2947 阅读 · 0 评论 -
专项测试自动化-如何自动化获取APP的FPS、丢帧率等信息来测试流畅度(基于Android,Java)
开始之前这里只说明我自己获取FPS、丢帧率等信息来测试流畅度的自动化代码,具体的业务技术知识和手工测试的方法可参考另两篇博客:专项测试-流畅度测试之前的知识储备-Andorid中VSync机制的介绍专项测试-如何测试APP流畅度,基于adb shell dumpsys gfxinfo命令来获取fps和丢帧率话不多说,进入正题~主要思路当渲染时间大于16.67,按...原创 2019-08-05 17:55:20 · 6132 阅读 · 7 评论 -
专项测试-如何测试APP流畅度,基于adb shell dumpsys gfxinfo命令来获取fps和丢帧率
FPS和丢帧率可以一定程度上作为APP流畅度的一项衡量标准,利用adb shell dumpsys gfxinfo命令可以获取软件渲染加载过程的数据,进行计算从而获取结果前置业务知识:在此之前,需要先了解屏幕展示绘制过程及Android的VSync机制,可参考另一篇博客:专项测试-流畅度测试之前的知识储备-Andorid中VSync机制的介绍获取数据运行命令"adb -...原创 2019-08-05 17:19:54 · 15905 阅读 · 1 评论 -
专项测试-流畅度测试之前的知识储备-Andorid中VSync机制的介绍
VSync 全称是Vertical Synchronization(垂直同步),在Android 4.1中引入Android 系统(同时引入的一个概念是Triple Buffering)。学计算机的经常听到Buffer 的概念(生活中也碰到过很多,比如弹簧),起到的都是一个类似的作用。用来协调两个不同速度的东西工作假设显示内容和绘制使用的是用一块内存,那可能会出现下面的问题。显示有截断的...转载 2019-08-05 11:09:31 · 1553 阅读 · 0 评论 -
专项测试-如何测试APP所消耗的流量-基于adb shell cat /proc/#pid#/net/dev命令
测试工作中,APP的流量消耗情况有时也需要关注,这关系到用户使用的好感度,毕竟流量是要钱的测试注意事项:测试时候尽量用WiFi去测,WiFi可以模拟弱网环境,做数据对比测试获取的是系统整体流量,所以测试时保证后台除了待测应用外无其他应用,这样测试结果就是待测App整体消耗的流量;否则会干扰测试结果1.利用adb shell ps | grep 包名来获取待测App的pi...原创 2019-07-31 13:51:50 · 2465 阅读 · 0 评论 -
专项测试-如何利用ffmpeg拆帧的方法计算APP的加载渲染时间-从下载安装到运行计算结果
安装环境:Win10运行环境:Ubuntu(我在win10上装了一个Ubuntu的子系统)wiki上对FFmpeg的解释是这样的(我本人也不是很熟悉,仅借用于拆帧辅助测试):FFmpeg 是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能[1],包含了libavcodec——这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式...原创 2019-07-31 10:53:54 · 1660 阅读 · 0 评论 -
jvisualVM加载插件及报错 response code:503 for URL和Received fatal alert: protocol_version解决办法
1.使用VisualVM做监控,工具->插件->可用插件,出现如下报错信息:2.这边在保证防火墙关闭的情况下(具体怎么关闭可根据自己电脑的系统上网查询)依然报错,这时需要将对应的插件地址进行替换;访问地址:https://visualvm.github.io/pluginscenters.html, 选择对应jdk的版本,我是用的jdk1.7的,所以选择图中红框标注的版本。3....原创 2019-04-23 16:15:39 · 2972 阅读 · 0 评论 -
性能测试-Linux监控常见问题和常用命令
1、查看当前终端启动的所有进程的命令时什么?答案:ps,查看当前系统所有的进程: ps -ef|grep ssh2、动态查看当前系统进程的命令是什么?答案:top3、使用top命令监控进程编号为1的进程的状态信息?答案:top -p 14、查看CentOS系统,CPU详细硬件配置信息的命令是什么?答案:查看系统配置的知识:cat /proc/cpuinfo5、查看CentOS系统内...原创 2019-04-15 18:29:27 · 526 阅读 · 0 评论