赞
踩
说明:本人学习Jmeter性能测试相关内容,供秋招找工作使用。因为没有互联网实习经验,只能学习皮毛凑合使用,建议找测试、测开工作的同学去b站找相应课程学习,本文只是粗略记录并总结,供面试时背诵使用。
思维导图
了解jmeter性能测试,之前进行了一个发帖服务器的压力测试,首先要进行的是一个脚本录制,可以使用第三方badboy录制工具进行录制,但是只支持web不支持app;当然可以设置本地局域网,让发送的请求走的是jmeter代理,进行http代理服务器录制,但是这个过程中会会录入大量无关信息,比如js,css,png文件等,所以就用了正则表达式在HTTP代理服务器处滤除无用的信息。
接下来就是一个数据驱动的过程,可以使用csv data参数化的方式,将测试用例的数据存储到excel,或txt的文件中,并对取样器进行相关的参数设置,同时还使用函数助手方式进行随机参数化,模仿不同用户的输入情况。
用户数据设置好之后,就是对取样器进行管理,1设置线程组的数量,以及集合点,模仿高并发情况。2.对重要取样器进行断言操作看服务器响应与测试结果是否相匹配,通过响应断言,断言持续时间,大小断言,多方位进行检测。3可以将登录发帖的操作放到事物控制器下,来查看一系列操作完成的性能情况,4.就是生成测试报表,可以通过断言结果,查看哪些响应失败了,查看结果树,聚合报告,图形结果可以看服务器的1.response time 响应时间2. 事务响应时间(一系列操作的取样器)3.吞吐量 时间段内(5h内)字节数 105/分钟4.吞吐率5.Hits/Request 网页点击数 6.Hits Per Second 每秒种点击次数等等。
脚本录制前写好测试用例(写好测试点,登录,发帖子),直接一气呵成,不要返回这些操作,因为每一个步骤他都会录制下来,录制好了操作步骤后,后面进行操作时,都按照这个操作执行。
特点:第三方BadBoy录制自动过滤无用的数据流,看起来清晰
特点:会录入大量无关信息,需要滤除,使用完,本地局域网设置成原样
特点:使用脚本中的前置处理器添加用户,但是需要打开jmeter才能设置,所以不提倡
特点:通过CSV data set config 参数化,将用户数据写到text,excel中.
特点:应用冒烟测试的随机数生成,无法预测客户的输入是什么
线程数和集合通常搭配适用,算的时候是整除,但是有时候可能关门刹那间有人窜过去,导致数据不能整除,所以要集合点要设置超时时间)
Thread Group->定时器->synchronize->将同步定时器拖到登录下面,起到并行作用。
前面线程数的设置就是并发,设置成35。现在的同步定时器就是并行,设置成10,就是集合10个人,同一时刻点进行并行发帖状态,但是35/10不能整除,jmeter基本需要10个人才能执行,所以进入等待的死循环,设置超时等待时间放弃一些集合点。
通过检查点才能判断你的响应是否正确执行。
响应断言,断言结果,断言持续时间,断言大小(开发人员计算出来服务器出来的页面大小是200字节,等到client解压后也应该是200字节,通过断言防止丢失数据,或被黑客攻击添加信息)
1.在一个采样器下sampler下,右键添加相应断言,
2.设置测试字段,响应文本之类,相应代码等
3.测试模式,就是测试与相应是否相关,然后在查看结果树中进行查看,但是一片红,可能是多个断言都出现错误,查起来比较麻烦,so通常在采样器下sampler下,右键添加监听器->断言结果,每个断言出现一个断言测试报告。
影响因素(2s-5s页面浏览最佳)
1.网络带宽:在本地局域网测试,屏蔽掉带宽带来的影响,因为我们做性能测试,测的是服务器的性能。
2.程序处理逻辑–不同浏览器对页面解析的快慢:使用同一款浏览器
3.请求数据包的大小:第一次用200k文件,性能调优后还用200k
这是另外一篇博文,见 链接
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。