jmeter基础学习

jmeter是什么
  1. 多线程框架-支持多并发操作
  2. 用于多服务器模拟负载
  3. 支持web,数据库,ftp服务器系统的性能测试
  4. 开源,纯java,可二次定制化开发
jmeter请求类型
  • jdbc
  • webservice
  • http
jmeter使用场景
  • 接口测试
  • 接口性能测试
  • 负载测试
  • 压力,稳定性测试
怎么用jmeter

1:需要java环境(安装jdk,设置环境变量)
2:下载jmeter
(http://jmeter.apache.org/download_jmeter.cgi)

常用端口号
  • http:80
  • FTP: 21
  • ssh:22
  • mysql:3306
  • oracle:1521
  • sqlserver:1433
  • https:443
  • telnet:23
测试工作涉及到的知识面
  1. 掌握一门编程语言
  2. 掌握计算 机原理+操作系统知识
  3. 良好的网络基础
  4. 掌握数据库知识
  5. 中间件(tomcat apache)
  6. 抓包工具
  7. 性能测试工具
性能测试指标概念

指标:能反应出一些问题的一些特征表现

指标描述
响应时间请求到做出相应的时间 ,对于web系统,接受的时间为2(好)/5(勉强能接受)/8(不能接受的时间)
并发用户数用户的概念(系统用户数,在线用户数,并发用户数【同事访问系统】,并发分为:严格并发(同一个请求同事并发和广义并发(不一定同一个请求
吞吐量
系统性能计数器如:cpu,内存,磁盘使用率,网络等
思考时间
并发用户数-计算

在确定并发用户数之前,先了解业务和常用场景(eg:访问网站首页,登录功能,核心业务功能,个人中心)

平均用户数计算:C=n(平均每天访问用户数)*l(使用时间)/T(考察时间长度(一天或一天))

或在不熟悉系统情况下,算大概值:系统用户数量*(5%-20%)

接口测试
原理

属于功能测试,测试流程如下:

  1. 测试接口文档(可以利用抓包工具)
    地址,返回格式,请求方式,请求参数(名称,含义,是否必填,值),请求头,返回实例
  2. 编写测试案例
  3. 执行测试
实现接口测试

1:代码
2:工具(postman,filter)

常用接口
web接口

webService(soupui)
可以做,比较复杂,请求报文和返回报文都是xml格式)

http接口

协议时超文本传输协议,传输方法有post和get

https借口

每一年需要付费,并非是应用层的一种新协议

应用程序接口
数据库接口
jmeter操作接口测试步骤
  • 创建测试计划
  • 创建线程组
  • 创建http请求
  • 参数填入
  • 断言(根据设置的值判断是否接口成功)
  • 增加查看结果树(查看接口访问的请求以及返回信息是否正确)或添加聚合报告(显示具体访问某个接口的一些详细信息,如:耗时,异常,百分比等信息)
  • 运行
jmeter参数化方式
  • csv数据控件(${变量名},如果没有定义,则会被当做普通的字符串)
  • 用户自定义变量
  • 函数助手(_Random)
  • 用户参数
jmeter服务器监控技术

监控原理:

关注cpu,io,网络,内存等变化的监控

操作步骤 (下载插件地址:https://jmeter-plugins.org/downloads/old/)

1:服务器端的操作
将ServerAgent-xxx.jar上传到被测服务器上,解压后,进入目录
Windows:双击serverAgent.bat启动
Linux:双击serverAgent.sh启动
默认使用4444端口。
2:本机的操作
离线安装插件:
jmeterPlugins-Standard.jar
jmeterPlugins-extras.jar
放到jmeter安装包的lib/ext没有路中(放进去后,记得重启jmeter)
3:jmeter的操作
线程组-监听-性能-性能度量收集器

常用断言

响应断言 :
(根据文本判断是否成功)
断言持续时间:
(判断请求道响应的时间是否符合设定)
大小断言 size Assertion:
(判断响应的字节大小)
监听器

  1. 查看结果树
  2. 聚合报告
    记录这一次被执行测试的总请求书,错误率,用户响应时间等信息
  3. 用表格查看结果
  4. 图形结果
  5. 断言结果(断言结果的总结)
jemeter常用的配置原件

1:http请求默认值
2:http请求头管理器
3:http Cookie管理器
4:http cache管理器(缓存,为了更真实的模拟用户的真实行为)

jmeter集合点(添加-同步定时器,及并发)

集合点简介
让各个线程(用户)步调一致,对系统进行加压,达到模拟真实并发访问的效果
创建集合点操作
对需要测试并发的请求添加同步定时器(注意作用域,不要放在线程组下面,造成对整个线程做了并发)
参数设置:
**1:Number of Simulated Users to Group by **

  1. 每集和够多少个模拟用户后发送一次测试请求
  2. 如果设置为0,等同于设置为线程组的线程数
  3. 确保设置的值不大于它所在的线程组包含的用户数(线程数)

2:Timeout in millisesonda–所有用户的集合超时(以毫秒为单位)
设置为0,将一直等待线程数达到Number of Simulated Users to Group by 才释放
设置为大于0,等待时间大于设置时间,没有达到设置的线程数值,就释放,继续做后面的业务

jmeter关联技术

关联概述
获取返回的值保存起来提供后面的请求使用
正则表达式
():括起来的部分就是要提取的
.:匹配任何字符串
+:一次或多次
?:找到第一个匹配项后停止
正则表达式提取器
添加后置处理器-正常表达式提取器
实战操作
${id}获取值

jmeter导出测试报告

1:严重jmeter是否可以正常用
2:设置环境变量

  • jmeter_home=jmeter的安装目录
  • path变量后面追加%jmeter_home%\bin
cmd指令导出测试报告

jmeter -n -t test.jmt(脚本的绝对路径) -1 reslut.jtl(自定义的名称) -e -o c:\tmp\result_report(测试报告的绝对路径)

编写测试报告

1:测试基本信息
测试目的,术语定义,参考资料等
2:测试环境描述
服务器软、硬件环境、网络环境、测试工具,测试人员
3:测试案例执行分析
详细描述乜咯测试案例的执行情况,以及对应的测试结构分析
4:测试结果综合分析及建议
对本次性能测试综合分析,并给出测试结论和改进建议

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值