职业经验 每天一点面试题(2021/3/3)

**潘 · 2021年03月03日 · 1087 次阅读

今天主要小小总结一下在使用 Jmeter 中可能用到的一些操作,很乱,视频可以看慕课https://www.imooc.com/learn/735

1、用来测试 B/S 架构
2、是由 apache 开发组织开发的一款软件
3、必须安装 java 的运行环境
4、jmeter 组成:取样器(进行脚本逻辑控制,控制业务流程,是什么样的请求)、线程组(场景设置,比如多少用户访问,访问多少次)、监视器(监控我们呢的脚本运行,取得新能指标,比如系统测试中的 tbs?)
5、下载 jmeter 后,jmeter.bat(win 下启动文件),jmeter.sh(Linux、ios 下启动文件)
6、图标和 api 在 docs 文件中
7、lib 文件存放了开发这个软件用到了哪些架包

使用:
1、在测试计划下添加 “线程组”。线程组页面:线程数 --- 比如有多少人访问;ramp-Up Period(seconds)--- 多少秒内访问一次(如 1 秒内要运行 100 个用户来访问);循环次数 --- 线程跑多少次
2、在线程组中点击右键添加,sampler 表示取样器,比如进行 http 请求、jdbc 请求(访问数据库的)、ftp 请求
3、在线程组中点击右键添加,监听器,比如最常用的 “查看结果树” 辅助我们脚本调试,查看访问过程;“聚合报告” 统计访问多少次,访问多少时间等
4、逻辑控制权:更精细的控制脚本逻辑
5、定时器:在做用户并发的时候,访问太块就跟用户是真比较大,通过定时器可以模拟真实用户访问

jmeter 脚本两种录制方式:
1、使用 badboy 进行录制,可以进行录制并且可以导出脚本(.jmx--jmeter 可运行文件)
2、使用代理方式进行录制

脚本录制的流程和思路:
了解业务流程 --- 录制工具 --- 脚本制作 --- 性能测试

badboy 分为四个区:工具区、地址栏、脚本区、视图区

使用 badboy 录制 jmeter 脚本:
1、在 badboy 中录制脚本
2、在 jmeter 中将该脚本打开,打开后在线程组下打开监听器(查看结果树),点击 “回放”,在 text 区域可看到运行结果(红/绿色代表网络是否通)
3、可以选中脚本,在 basic 界面查看协议(http)、服务器 ip、请求方法。业务逻辑相关(自动重定向和跟随重定向?)
脚本错了可关注点:1、脚本的路径是否正确,是否缺失或错误;2、请求参数是否正确(parameters 页面),可以手动修改参数;3、编码(utf8)

jmeter 代理录制:
http 请求默认值(被测的端口,地址)---http 代理服务器(对外提供一个服务器端口号)--- 浏览器设置(与代理服务器端口号一致)

代理服务器设置中可以设置包含和排除模式:可以通过正则表达式 */来过滤

jmeter 代理录制中问题定位:
1、录制的脚本中没有 http cache 管理器,http cookie 管理器,需要添加上,因为没添加的会认为来自不同的浏览器
2、有时候会有一些步骤失败,可以忽略,不是测试重点

聚合报告可以看到直观的数据

jmeter---用户自定义变量
1、在配置文件 --- 用户定义的变量,打开后在页面下可以添加,比如用 ip 表示具体的 IP 地址 172.16.16.1 ,可以加描述
2、用 ${ip}来引用声明的变量
3、如果出错了可以在 “查看请求数” 下查看排查

jmeter---函数参数化
1、函数助手 ---- 在 “选项” 菜单栏上有 “函数助手对话框”,选择__CSVRead 函数来设置。先用一个文件编写参数,把地址付给 csv FILE TO GET VALUES FROM I*ALIAS;然后把序列号赋值,这里序列号从 0 开始
然后拷贝到参数下,然后在线程组下配置个用户,就可以下发多个

2、csv data set config---在右击 “添加” 菜单栏中,“配置文件”,选择 csv data config。添加文件名称和路径,编码 utf8,变量名称没有的化可以赋给名称。文件名还是 ${变量名}赋值

jmeter 关联: 当上文有一些变量的值在下文中被使用,就是比如在前面的运行的脚本中有的值需要在后面使用

使用 “正则表达式提取器”:响应字段一般都是主体;引用名称;正则表达式提取(.+?),模板一般 $1$(匹配 1 个)

loadrunner 与 jmeter 管理的不同之处:
1、在 loadrunner 中关联函数是写在要获取的变量值的页面的前面;在 jmeter 中关联函数是要卸载要获取变量值的页面的后面
2、在 loadrunner 中关联函数是注册函数;在 jmeter 中我们使用正则表达式提取器来进行关联

解决乱码:
1、在页面添加 utf-8
2、在 JMETER.PROPERTIES 文件(bin 文件夹下)中可以将 sampleresult.defult.encoding=UTF-8

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册