既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
注:要查看自己的接口是什么类型的请求,上述为get请求
添加聚合报告就可以查看测试的信息
post请求
注:post请求要加上参数值
jmeter 操作数据库
操作数据库基本有四个步骤:(1)导入mysql的jdbc的jar包 (2)创建数据库的连接配置,线程组里添加配置元件-JDBC Connection Configuration (3)线程组里添加jdbc request,写sql语句 (4)添加察看结果树,点击启动按钮,就能看到执行的SQL。具体的实例如下截图所示:
JMeter可以针对多个数据库进行操作,下方提供一下常用的驱动
压测结果查看
运行完后,聚合报告会显示压测的结果。主要观察Samples、Average、error、Throughput。
Samples:表示一共发出的请求数
Average:平均响应时间,默认情况下是单个Request的平均响应时间(ms)
Error%:测试出现的错误请求数量百分比。若出现错误就要看服务端的日志,配合开发查找定位原因
Throughput:简称tps,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,tps越高说明服务器处理能力越好。
Jmeter-webservice接口脚本
基本分为五个步骤:(1)先需要通过soapui工具获取到webservice接口的请求地址、请求报文和请求soapaction。(2)jmeter新建一个线程组 (3)线程组下建立SOAP/XML-RPC Request,写入请求url、请求报文、请求soapaction。(3)启动jmeter,调用接口,通过察看结果树查看返回值。
soapui获取信息的实例如下图所示:
soapui提交完后,点击raw,可看到soapation,有些接口若没返回soapation,则jmeter里也就不用填。
jmeter-webservice脚本实例如下图所示:
在做压力测试的时候很多时候会要去测试并发,其实并发测试归属于压力测试,其中的差别就在于需求范围和间接的运行时间,如下图:
*Rame-Up Period(in seconds):表示JMeter每隔多少秒发动一次,如果设置为0,就代表0秒跑一次,这里边数可以理解为多长时间跑一次(准备时间)
在网络很多网友反馈Jmeter的测试结果不准确,下面我们主要聊一下不准确的原因。
Jmeter 是ASF的一款开源免费软件 ,在国内被很多中小公司当作性能测试工具广泛使用。Apache软件基金会(ASF)是一家总部位于美国的非营利性慈善组织。ASF的所有产品都通过公共论坛的在线协作开发,并从美国境内的中央服务器分发。
Jmeter做性能或压力测试,首先要建立一个线程组,如果需要事务在线程组内再添加事务,然后根据需要可以设置并发的虚拟用户数,也就有多少个线程组并发运行。
为了弄清楚jmeter统计结果不准确,首先我们要搞清楚Jmeter对线程组中的HTTP请求运行的机制。对于Jmeter而言,线程组内的HTTP请求都线性执行(上一个请求执行并返回结果后,再请求下一条请求),但事实上往往并没有那么简单。如下所示Chrome访问一个web页面,HTTP请求是并发进行的(前一个请求还没有返回结果,下一条请求就开始下发请求)。这样就会导致Jmeter尤其是事务的统计产生较大偏差。
小编结语:根据我的经验,做单接口压测,用jmeter完全没问题;如果做页面压测,结果同样具有参考性,能反应大部分性能问题;如果要获得更准确的结果可以考虑其他工具,如熟知的loadrunner。
总结:
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
频,并且后续会持续更新**