作者:宋赟 编辑:毕小烦
Apache JMeter 应该是应用最广泛的性能测试工具。怎么用 JMeter 编写性能测试脚本?
HTTP 请求各项信息说明(以 JMeter 5.1 为例)。
如下图所示:
http://
”,JMeter 会自动加上,一般的 Web 服务端口号默认是 80,如果你访问的地址中带有其他端口号在此填入,协议根据目标地址实际情况填入 http
或 https
。HttpClient4
和 Java
两个选项。HTTPClient4
可以看成是一个没有界面的浏览器,可以通过它高效的访问Http协议的资源;Java
选项是使用 JDK 提供的 net
包中的工具类来访问。iso8859
,一般写成 UTF-8
即可,当然也可以和开发人员确认。code
是 3xx
时,自动跳转到目标地址。与自动重定向不同,JMeter 会记录重定向过程中的所有请求响应,在查看结果树中可以看到服务器返回的内容,选了这个可以对响应内容做关联。HTTP
响应投中的 Connection:keep-Alive
。POST
使用 multipart/form-data
】,建议也勾选此项。填好以上这些选项后,HTTP 单接口就准备的差不多了,这里给 GET、POST、文件上传三个示例图,供参考。
脚本制作原则里有说到每个请求必须要有响应断言,是因为若对接口返回不做判断的话,我们无法判断请求的有效性,从而无法评估出性能测试的真实性,故每个请求必须要有响应断言。接下里我们看看响应断言。
断言是通过获取服务器响应数据,再根据断言规则去匹配这些响应数据;若匹配到了是正常现象,不会进行任何提示,若匹配不到,JMeter 则会断定这个请求失败,在后面调试脚本中我们会看到查看结果树中的请求名称是红色字体。断言组件有很多,我这里讲到的响应断言基本能满足 80% 以上的断言需求。
首先,我们增加断言,在请求名称上右键->添加->断言->响应断言:
再说说响应断言中一些参数的意义:
名称和注释: 可以随意设置,最后有业务意义。
Apply to: 应用范围,有 4 个选项
测试字段:对响应数据的不同部分进行匹配,有 7 个选项。
写好脚本后,接下来是调试脚本,JMeter 一般是结合察看结果树来调试脚本,可以从察看结果树元件中看到服务器的返回信息。察看结果树会显示取样器的每一次请求,若是有大量的请求,在压测时建议关闭,否则会比较消耗压测机资源。
察看结果树这元件一般只用来调试脚本,这里也大概科普下察看结果树各项参数用途。
STEP 1. 将我们自己实现的请求 Dubbo 的服务打成 jar 包放到 JMeter/lib/ext
目录下。
STEP 2. 打开 JMeter,添加线程组,在线程组中添加 Java 请求。
STEP 3. 在 Java 请求中类名称中选择自己上传的类,在参数栏填入相关参数内容。
STEP 4. 对 Java 请求增加相应断言以及通过察看结果树调试脚本,和 HTTP 脚本一致,不再赘述。
代码有编码规范,写脚本也有规范,比较推荐的规范是:
遵循这些规则可以让我们养成良好的习惯,避免不必要的错误。
本文简单介绍了编写 HTTP 和 Dubbo 性能测试脚本的步骤,并且给出了性能测试脚本的参考规范,希望对大家有帮助。
(完)
如果文章对你有帮助,记得留言、点赞、加关注哦!