Jmeter

测试工具分为两类:接口测试和性能测试。

jmeter: 三种比较有用的原件 

1.接口文档

2.参数化

3.断言

/////////////////////////////////////jmeter添加代理服务器/////////////////////////////////////////

1.添加Http代理服务器

  2.设置端口号(不要有冲突的),设置HTTp domains ,一般都是本机的Localhost

  3.设置目标控制器,即选择录到内容的哪个组件中

浏览器设置:

打开控制面板---打开Internet设置->连接,选择局域网设置

地址设置的localhost端口号与jmeter中保持一致

开始录制

启动代理服务器-->浏览网页进行录制xian

四、录制手机设置

|1、确保jmeter代理服务打开,确保手机与电脑处于同一网段。

2、在手机中选择设置->代理->手动,填入代理ip(此ip是电脑端ip),然后填入端口号(此端口号是jmeter代理服务中,设置的端口号)。

3、操作手机,数据会被捉取到meter中所指定的线程组或其它目标地方。

五、其它情况

如果无法被取https协议时,在jmeter菜单中选择菜单“选项"->"SSL管理器”,将jmeter安装目录中bin文件下的jmeter证书导入进来即可。

//////////////////////////////////////////线程组设置/////////////////////////////////////////////

1.做性能测试时,添加线程之后,需要对线程的运行环境进行设置。

2.线程数;就是虚拟用户数。可以虚拟多个用户进行业务操作。

3.RAMP-UP时间:加载添加的用户数所需要的时间。如果设置100个线程数,此处设置为1秒,即1秒启动100个用户,如果设置为两秒即为1秒启动50个用户。

4.延迟创建线程直到需要:当此功能开启时,用户数可以根据“启动延时”配置设置进行。

5.调度器:当此功能开启时,可以设置持续时间。即运行时间。

//////////////////////////////////////////////////////添加各类监控///////////////////////////////////////////

1、査看结果树;査看请求结果,结果可以查看请求连接及请求參数,返回状态等内容。

2、断言:用来校验预期言果与实际结果是否一致。可以选择返回内容.返回状态,清求内容,请求头等内容进行新言.断言方式可以是包含.等于等方式。

////////////////////fiddler回顾///////////////////////////

1

fiddler是  一个捉包工具.实现原理是一个代理。

2

打开fiddle,即进入代理模式。此时,所有web端的请求与返回即可在fiddler中显示相内容。

3

此时开启请求前断点.所有请求链接即可法打开。开启请求后断点.所有返回无法收到。

4

用命令可以計对某个网站的请求进行断点。如bpu www.baidu.com,即只对此网度进行请求前断点,其它网站信息给予放行.可以请求成功,取消此网站断点使用bpu。                         

5

、用命令针对某个网站的响应进行断点。如bpafter www.baldu.com,即请求成功后,返回信息被拦截(中断)。取消此网站断点时, 使用bpafter

6

对请求/响应进行篡改:设置断点后.可以对请求/响应篡改。打开右側·“白动回复器”· ,勾选启用规则. 将需要篡改的请求从左侧拖到自动回复器。然后在规则编辑器中,第二选择框,找到“找一个文件"  (find a file...) ,选择你想展示的文件。刷新浏览器请求,查看内容是否替换。

1.关联

方式:正则表达、Xpath(一般xml比较多)

步骤:

badboy录制----导入jmeter-----找出需要关联的请求(nav.pl)----增加断言-----增加断言结果-----查看结果

2.Jmeter分布式部署(连接多台电脑做压力测试)

(1)Jmeter分步执行原理:

Jmeter分布测试时,选择其中一台做控制机(controller),其他机器为代理机(Agent)

执行时,Controller会把脚本发送到每台Agent上,Agent 拿到脚本后开始执行,Agent执行时不需要启动Jmeter,只需要把jmeter-server.bat文件打开,它应该是通过命令行模式来执行的。

执行后,Agent会把结果回传给Controller,Controller会收集所有Agent的信息并汇总。

(2)Agent配置:

1、Agent机上需要安装JDK、Jmeter,并且配置好环境变量。

2、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.8.149

3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,1099是端口号,可以随意自定义

4、打开jmeter-server.bat文件,就设置完成了,等待控制机(Controller)启动。

(3)Controller配置:

1、Controller机上需要安装JDK、Jmeter,并且配置好环境变量。

2、打开“运行”,输入"cmd",打开运行面板,输入“ipconfig”,找到IP地址,例如是:192.168.8.174

3、打开Jmeter/bin/jmeter.properties,找到”remote_hosts=127.0.0.1”,把这一行修改为”remote_hosts=192.168.8.149:1099,192.168.8.174:1099,1099是端口号,可以随意自定义。如果有多台代理机,这里需要把所有的代理机的IP地址和端口号都加入进来。


4、打开jmeter-server.bat文件,设置完成了

补充:修改文件后取消注释

Agent:server_port=1099

    server.rmi.localport=1099

server.rmi.ssl.disable=true

Controller:remote_hosts=192.168.6.36:1999,192.168.6.35:1099

server.rmi.ssl.disable=true    找不到文件时开启

Controller可以同时调用多个Agent,前提是Agent的服务处于开启状态。

(4)开始添加线程组请求来运行查看结果:

1、打开jmeter.bat文件,添加线程组,编辑线程数,这里设置100个线程数,循环2次,就是一台机器发送100*2=200个请求。

2、添加HTTP请求,这里以访问淘宝为例。

3、添加察看结果数和聚合报告,点击运行,可以选择远程启动或者远程全部启动,如果是点击远程启动,可以选择任意一台电脑来运行,如果是点击远程全部启动就会运行控制机和所有的代理机。

4、这里以点击远程全部启动为例。运行结束后,查看聚合报告,每台电脑设置的线程数为200,这里一共是两台电脑,所以是200*2=400个线程数。

接口文档测试:

1.参看需求文档,直接在jmeter中进行参数设置。

2.如果没又需求文档的话,可以直接在fiddler中抓取

3.填写接口的相关参数信息

添加过断言之后可以添加断言结果来进行数据的查看。

响应断言:

添加响应断言,设置需要包含的字符串。例如匹配字符为“百度一下,你就知道”,如果反悔的文本内容如果包含“百度一下,你就知道”,则就算pass。

添加响应断言

输入需要匹配的字符串信息

添加:断言结果(Assertion)、查看结果树(View Results Tree)

运行Test Plan中的线程组,进行断言检查。

响应断言的方法有:

数据包字节大小断言(Size Assertion)

判断响应结果是否包含正确数量的byte

持续时间断言(Duration Assertion)

判断是否在给定的时间内返回响应结果

用于判断响应时间是否符合要求,仅需要填入期望的上限即可,单位为ms

jmeter的参数化设置

第一种:

使用元件:前置处理器->用户参数

第二种:

使用元件:配置元件->csv参数化

第三种:

使用函数助手,点击选项->Function helper dialog,选择CSV这个函数

CSV file to get values from | *alias:CSV文件取值路径,即需要参数化的参数的文件路径

CSV文件列号| next|*alias:CSV文件列号是从0开始的,第一列为0,第二列为1,以此类推

Excel文件:

函数字符串:函数参数填好后,点击生成,拷贝到请求参数对应的值中

如在登录请求中,第一列为用户名,函数字段号为0,第二列为密码,函数字段号为1,以此类推进行修改使用即可,替换参数化后的参数,然后修改线程数

你可能感兴趣的:(Jmeter)