jmeter脚本的编写
前几天讲到了性能测试的入门,今日继续来讲解jmeter的使用,本文讲的都是比较细,希望各位耐心的看完。
一、jmeter的安装与打开
前提条件:给大家一个jmeter的安装包 百度网盘的路径如下:链接:https://pan.baidu.com/s/1Wu0pJHqeYv6pj67Fv3s3tw 提取码:7r5V
安装jdk(建议1.8) jdk-->java开发工具包 注意:一台电脑是允许安装多个jdk的,如何确认安装完好?cmd中,输入java -version,即可看到1.8
jmeter是开源免费的,所以只需要把压缩包解压即可使用,不需要过多的安装手续
启动jemter,如何启动?
会出现如下图的东西,不要急,稍等几秒钟会有东西出来
进入界面,这个图形界面叫做GUI
注意:原来的黑屏的那个小窗口,不要叉掉,切记切记
如果,你是mac电脑,也可以点击其他的两个文件启动
二、jmter的使用以及目录介绍
2.1 语言的切换
第一次解压,打开进入jmeter,默认是英文,其实从jmeter.log的日志文档中也可以看出来。比如,现在打开jmeter.log,第一行就看的到
那如果,你想把自己的jmeter变成中文版,怎么办呢?有两种办法;看你是想仅一次显示中文,还是想永久显示中文。
如果你想暂时这一次显示中文,怎么理解这句话呢?比如你此时设置成中文,关闭后,再次打开,还是显示英文,因为系统默认的就是英文
步骤:在jmeter中选择options--->choose language--->Chinese
如果你想永久的显示,不管什么时候打开,都显示中文,相当于“一考定终生”;步骤:去修改配置文件:jmeter.properties
建议在学习阶段:用中文来学习,至少看的懂字
2.2 Jmeter默认保存的文件路径在bin文件夹
比如:你刚刚弄完一个脚本,点击保存
当然,你也可以把脚本放在其他路径下,只不过,当你第一时间不记得自己放在哪里时,可以去bin目录下找找,试一下能不能找的到,也许因为某个时间点,你自己就无意间自动ctrl+s了,自己保存了都不知道
2.3 jmeter的文件目录
2.4 jmeter的使用
一个完整的jmeter脚本,一般会包含 线程组+取样器+监听器
取样器:根据不同的接口协议,有不同的取样器
监听器:展示取样结果 不同的监听器从不同的角度展示取样结果
配置元件的优先级最高,是最先被执行的,此时我添加一个配置元件
那么执行顺序就是:
接下来,演示前程贷项目的注册接口,先打个样;前提条件:先拿到接口文档,知道接口的路径;填入参数和服务器等信息
启动:
保存:
注意:Ping 不通不代表网络不通,Ping 的通也不代表网络通;所以,我们一般用telnet指令,因为有的服务器是禁ping的
三、注意事项
3.1 服务器IP的填写
也可以填写域名,www.baidu.com
绝对不能写斜杠:www.baidu.com/ 此种写法错误 也不能写前缀:http:www.baidu.com
http协议默认端口80 80端口可以不写的,比如我刚刚在请求百度时,就没写
那么我们慢慢来看,之前请求的一个注册接口
查看结果树,显示注册成功,但,在写服务器ip时
为什么呢?这个服务器IP相当于一个地址,端口号相当于一个门牌号,路径就是具体根据线路找到某个房间。但是,你如果在路径框里还写服务器IP,那么就好比你已经进入了大门,本来马上要找对应的房间,结果又重新搜索哪个社区,哪个单元,有的绕路了
3.2 编码 utf-8
在http请求中- - -》内容编码只对请求体(request body)有效,对response body(响应体)无效
那么,请求百度网站,响应的乱码怎么来的呢?
因为jmeter的所有展示信息页面的编码,默认都是根据系统编码来的;现在windows系统的编码默认为gbk编码。不一样,所以要修改
如何修改呢?去配置文件jmeter.properties文件中修改,修改完后,把jmeter关闭再重启即可看到
注意:Jmeter的配置文件被修改,需要重启jmeter才能生效
问:以后所有的都改为utf-8的编码格式吗?
答:不一定要都改成utf-8,这个需要看返回的数据的要求格式是什么,有的是utf-8,有的是GBK,有的是gb2312,有的是BIG5;所以也不绝对
3.3 编码怎么用
当请求格式为参数时,请求的参数值中有 中文或者特殊符号时, 请求一定勾选“编码”,如果不勾选,要么直接报错,要么数据中的该字段显示乱码
另外,还有个建议:无论什么时候,这个编码最好都要勾选上,防止出错
3.4 消息头管理器中的Content-Type
charset是只能作用请求部分
四、录制脚本
1、怎么来录制脚本
http代理服务器录制脚本
1.新建线程组
2.添加http代理服务器 非测试元件
3.http代理服务器修改,端口、目标控制器、请求过滤器
点击启动,为什么报错?没有修改目标控制器
修改之后,再次启动,会出现正确信息
这个出现的小弹窗,不用管,也不要叉掉,这个你要是叉掉了,那在网页中点击录制脚本,就无效
因此,修改端口:8899;修改目标控制器 线程组2 ;再修改请求过滤器,添加建议排除
打开电脑本地的代理
保存之后,在浏览器中访问:www.lenmoban.com(任意一个网址都行,我这里只是随便举个例子)
就录制好了脚本
jmeter脚本的编写的更多相关文章
- Jmeter脚本录制方法(二)——手工编写脚本(jmeter与fiddler结合使用)
jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...
- Jmeter脚本录制方法(二)手工编写脚本(jmeter与fiddler结合使用)
jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...
- 提升jmeter脚本编写效率的方法:Fiddler导出jmx文件
有效提升编写JMeter脚本效率的方法 jmeter的脚本来源有以下几种:badboy录制.jmeter自带的录制功能.手动编写脚本(使用fiddler/wireshark来抓包,然后构造协议写脚本) ...
- Jmeter Web 性能测试入门 (四):一个小实例带你学会 Jmeter 脚本编写
测试场景: 模拟并发100个user,在TesterHome 站内搜索VV00CC 添加线程组 添加HTTP信息头管理器 添加HTTP Sampler 填写HTTP Sampler中的信息 添加监听器 ...
- jmeter脚本编写
jmeter脚本编写 一.http协议接口编写注意事项 1.请求体为json格式:一定要写请求头Content-Type:application/json 2.json格式文本 2.1 key-val ...
- 如何编写测试团队通用的Jmeter脚本
平时学习.工作过程中,编写的一些jmeter脚本,相信大多数都遇到过这个问题.那就是:如果换一台电脑运行,文件路径不一样,会导致运行失败. 前不久,自己就真真切切遇到过一回,A同学写了个脚本用于压测, ...
- 转:通过ant来批量执行jmeter脚本,并生成报告(附: 生成报告时报“Content is not allowed in prolog”这个错误的解决方案)
最近在使用jmeter写脚本来进行测试,最终写了很多份脚本,然后,就在想,这么多脚本,我不可能一个一个的手动去点啊,有没有什么办法来批量运行Jmeter脚本呢? 这个时候,自然而然地想到了万能的ant ...
- 性能测试培训:批量执行Jmeter脚本之ant调用
性能测试培训:批量执行Jmeter脚本之ant调用 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的load ...
- Jmeter+Ant+Jenkins接口自动化测试(二)_测试方案设计及jmeter脚本开发
前言 根据之前部署好的测试环境,进行接口自动化测试的方案设计及Jmeter脚本开发.测试方案设计过程中采用了数据分离和对象分离等思路,因此直接通过特定的测试用例文档来驱动整个自动化接口测试的执行,相关 ...
随机推荐
- 接收某项课程id,通过axios发起get请求,由于携带params出现的问题(已解决)
问题:在最新课程页面(NewBook.vue)点击某一项课程,通过传递该课程的 id 跳转至课程详情页(Bookdetail.vue),采取的跳转方式是声明式导航,即 <router-link ...
- 从eclipse迁移到ideal
个人用eclipse比较多,什么Luna,Neon,Mars.几乎每年都要研发出一个版本.目前所在的这家公司,维护的是一个10年的老项目,需求迭代频率比较高,业务代码臃肿而难理解,依赖关系不清晰,代码 ...
- MongoDB简介---MongoDB基础用法(一)
Mongo MongoDB是一个基于分布式文件存储的数据库.MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. MongoDB 将数据存储为一 ...
- 如何解决 Nginx 端口映射到外网后访问地址端口丢失的问题
1. 问题说明 一个手机h5页面的项目,使用nginx(监听80端口)进行访问,内网访问的地址是192.168.12.125/h5,访问正常,nginx中的配置如下: #微信H5页面访问 locati ...
- Codeforces Round #679 (Div. 2, based on Technocup 2021 Elimination Round 1)
考场上只做出来四道,第二天一早就写出来了E,蛮绝望的. A Finding Sasuke 水构造 #include <cstdio> #include <algorithm> ...
- 群晖DS218+部署mysql
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- pinpoint部署管理
本次pinpoint安装使用了docker环境安装,需要预先docker运行环境 1.安装docker环境 2.获取pinpoint-docker,安装命令 git clone https://git ...
- 5G应用的实时决策
背景概述 尽管近几年很多供应商在不断重申着他们对VoltDB持续输出的专业认可,VoltDB也随着技术发展在不断增加一些流行技术词汇,但是真正让大家了解某个技术产品持续演进的特性,单单依靠增加几个技术 ...
- Lock Her Up
题意描述 同样没有链接.... Problem 2: Lock Her Up [Jan Kuipers, 2003] Bessie has been bad again and Farmer John ...
- 2.5远程仓的库使用-2.7Git别名
2.5 远程仓库的使用 查看远程仓库 git remote # -v 选项会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL 添加远程仓库 git remote add <sho ...