添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

关于Jmeter性能测试工具不再过多介绍。如果你要学习软件性能测试,那么多少应该会对它有所耳闻。

强烈建议阅读官方文档学习: http://jmeter.apache.org/index.html

还有比这个更权威更全面的介绍Jmeter工具使用的么?

不过,此处要介绍是用它来做接口测试。

一、 安装 Jmeter

Jmeter 官方首页: http://jmeter.apache.org/

关于 Jmeter 可以做什么,官方上也有非常详细的介绍。另外它的文档也写很详细。如果想学习 Jmeter ,那么它的文档将会是最好的教材。

我相信你可以在官网上找到下载地址并把它下载下来。

Jmeter Java 语言开发,最新的 Jmeter3.0 版本的运行需要有 Java 7 或之后版本的环境。我同样相信你能搞定 Java 环境。

接下来,将下载的 apache-jmeter-3.0.zip 解压,进入解压目录 .../apache-jmeter-3.0/bin 。双击 ApacheJMeter.jar 启动

、添加 HTTP 接口测试

我们的所以工具都会在 Jmeter 工具中完成,接来就按照一般步骤来创建一个 HTTP 接口测试。

如上图 ,右键点击“测试计划” --> “添加” --> Threads(Users) --> “线程组”。

如上图, 设置线程组, 线程组主要包含三个参数:线程数、准备时长( Ramp-Up Period(in seconds) )、循环次数。

线程数 :虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

准备时长 设置的虚拟用户数全部启动 的时长 。如果线程数为 20 ,准备时长为 10 (秒) ,那么需要 10 秒钟启动 20 个线程。也就是 平均 每秒启动 2 个线程。

循环次数 :每个线程发送请求的 数。如果线程数为 20 ,循环次数为 100 ,那么每个线程发送 100 次请求。总请求数为 20*100=2000 。如果勾选了 永远 ,那么所有线程会一直发送请求, 手动点击工具栏上的停止按钮,或者设置的线程时间结束。

因为这里要做接口测试,所以各个参数为均 1

如上图 ,右键点击“线程组” --> “添加” --> Sampler --> HTTP 请求”。

名称 :本属性用于标识一个取样器,建议使用一个有意义的名称。

注释 :对于测试没有任何作用,仅用户记录用户可读的注释信息。

服务器名称或 IP HTTP 请求发送的目标服务器名称或 IP 地址。

端口号 :目标服务器的端口号,默认值为 80

协议 :向目标服务器发送 HTTP 请求时的协议,可以是 HTTP 或者是 HTTPS ,默认值为 http

方法 :发送 HTTP 请求的方法,可用方法包括 GET POST HEAD PUT OPTIONS TRACE DELETE 等。

Content encoding :内容的编码方式,默认值为 iso8859

路径 :目标 URL 路径(不包括服务器地址和端口)

自动重定向 :如果选中该选项,当发送 HTTP 请求后得到的响应是 302/301 时, JMeter 自动重定向到新的页面。

Use keep Alive 当该选项被选中时, jmeter 和目标服务器之间使用 Keep-Alive 方式进行 HTTP 通信,默认选中。

Use multipart/from-data for HTTP POST :当发送 HTTP POST 请求时,使用 Use multipart/from-data 方法发送,默认不选中。

同请求一起发送参数 在请求中发送 URL 参数,对于带参数的 URL jmeter 提供了一个简单的对参数化的方法。用户可以将 URL 中所有参数设置在本表中,表中的每一行是一个参数值对(对应 RUL 中的 名称 1= 1 )。

如上图 ,右键点击“线程组” --> “添加” --> “监听器” --> “察看结果树”。

三、添加新的 POST 请求

POST 请求的添加方式与前面 GET 请求一样。不过 POST 请求需要设置参数。

服务器名称或 IP 127.0.0.1

端口号: 8000

方法: POST

路径: /polls/question_vote/

同请求一起发送参数:

点击 “添加”按钮 ,添加 POST 请求的参数。

四、添加断言

对于自动化测试来说,断言必须要有的,如果没有断言我们只能人眼对比对接口返回的数据,有了断言功能,就会简化这个过程。Jmeter 提供了丰富的断言方法来帮助我们完成这个工作。

如上图 ,右键点击 HTTP 请求“添加” --> “断言” --> “响应断言”。

要测试的响应字段:响应文本、 Document(text) URL 样本、响应信息、 Response Headers Lgnore Staus 等选项。虽然接口返回的是 Json 格式的数据,但对于 Jmeter 来说返回数据为文本,所以,这里可以勾选“响应文本”

模式匹配规则:包括、匹配、 Equals Substring 。这里只需要验证返回数据中是否包含主要的关键字,所以,这里勾选“包括”。

要测试的模式:其实就是断言的数据。点击 “添加”按钮,输入要断言的数据。

运行测试:

再次清除测试数据,点击启动测试,查看结果树,如下图

=====================

接口测试就是这么简单!