一、简介java
Apache JMeter是Apache组织开发的基于Java的
压力测试工具。用于对软件作压力测试,它最初被设计用于Web应用测试但后来扩展到其余测试领域。 它能够用于测试静态和动态资源例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库, FTP 服务器, 等等。JMeter 能够用于对服务器、网络或对象模拟巨大的负载,来自不一样压力类别下测试它们的强度和分析总体性能。另外,JMeter可以对应用程序作功能/回归测试,经过建立带有断言的脚原本验证你的程序返回了你指望的结果。为了最大限度的灵活性,JMeter容许使用正则表达式建立断言。
Apache jmeter 能够用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对象,数据库和查询,FTP服务器等等)的性能进行测试。它能够用于对服务器,网络 或对象模拟繁重的负载来测试它们的强度或分析不一样压力类型下的总体性能。你可使用它作性能的图形分析或在大并发负载测试你的服务器/脚本/对象。
二、用途
1.可以对HTTP和FTP服务器进行压力和性能测试, 也能够对任何数据库进行一样的测试(经过JDBC)。
2.彻底的可移植性和100% 纯java。
3.彻底 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
4.彻底多线程 框架容许经过多个线程并发取样和 经过单独的线程组对不一样的功能同时取样。
5.精心的GUI设计容许快速操做和更精确的计时。
6.缓存和离线分析/回放测试结果。
三、下载、简单应用
四、如何将上一个请求的结果做为下一个请求的参数
在压力测试的时候,常常要将几个流程串联起来才能将程序测试经过。如:我如今用户首先要登陆,得到我登陆的凭证(tokenId),以后个人请求其余的资源的时候须要带上这个凭证。才能识别你是不是合法的用户。
1)、建立一个线程租
2)、建立一个获取凭证的请求
正则表达式
3)、建立后置处理器
JMeter GUI 视图中右击该采样器打开右键菜单 -> 添加 -> 后置处理器 -> 正则表达式提取器,打开"正则表达式提取器"会话页面并编辑其内容以下:
后置处理器是当这个请求返回后要作得事情,我这里是要从返回的内容中将咱们要的tokenId获取出来。这里使用“
正则表达式提取器”,用正则表达式,将咱们要的内容获取出来。
4)、正则表达式提取器配置
数据库
- 引用名称是下个请求将要引用到的变量名;
- 正则表达式是提取你想要内容的正则表达式,小括号()表示提取,也就是说对于你想要提取的内容须要用它括起来;
- 模板是使用提取到的第几个值。由于可能有多个值匹配,因此要使用模板。从 1 开始匹配,依次类推。这里只有一个,因此填写 $1$ 便可;
- 匹配数字表示如何取值。0 表明随机取值,1 表明所有取值。这里只有一个,填 1 便可;
- 缺省值表示参数没有取到值的话,默认给它的值。通常不填。
这个请求返回的数据以下:json
{"message":"success","statusCode":200,"registerDay":"20","tokenId":"bf1017bc1bb495ae31764b306a3422885f5"}
咱们如今要获取的是上面这个json字符串中tokenId的值,即 bf1017bc1bb495ae31764b306a3422885f5 。
5)、添加下一个请求
在这个请求中,咱们要将上面的tokenId做为一个参数一并发送。
同上2)、添加一个http请求(线程租右键——》添加——》Sampler——》HTTP请求)

6)、添加查看结果树
数组
7)、执行后,便可经过”查看结果树“查询
缓存