前几天讲到了性能测试的入门,今日继续来讲解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脚本的编写的更多相关文章

  1. Jmeter脚本录制方法(二)——手工编写脚本(jmeter与fiddler结合使用)

    jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...

  2. Jmeter脚本录制方法(二)手工编写脚本(jmeter与fiddler结合使用)

    jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...

  3. 提升jmeter脚本编写效率的方法:Fiddler导出jmx文件

    有效提升编写JMeter脚本效率的方法 jmeter的脚本来源有以下几种:badboy录制.jmeter自带的录制功能.手动编写脚本(使用fiddler/wireshark来抓包,然后构造协议写脚本) ...

  4. Jmeter Web 性能测试入门 (四):一个小实例带你学会 Jmeter 脚本编写

    测试场景: 模拟并发100个user,在TesterHome 站内搜索VV00CC 添加线程组 添加HTTP信息头管理器 添加HTTP Sampler 填写HTTP Sampler中的信息 添加监听器 ...

  5. jmeter脚本编写

    jmeter脚本编写 一.http协议接口编写注意事项 1.请求体为json格式:一定要写请求头Content-Type:application/json 2.json格式文本 2.1 key-val ...

  6. 如何编写测试团队通用的Jmeter脚本

    平时学习.工作过程中,编写的一些jmeter脚本,相信大多数都遇到过这个问题.那就是:如果换一台电脑运行,文件路径不一样,会导致运行失败. 前不久,自己就真真切切遇到过一回,A同学写了个脚本用于压测, ...

  7. 转:通过ant来批量执行jmeter脚本,并生成报告(附: 生成报告时报“Content is not allowed in prolog”这个错误的解决方案)

    最近在使用jmeter写脚本来进行测试,最终写了很多份脚本,然后,就在想,这么多脚本,我不可能一个一个的手动去点啊,有没有什么办法来批量运行Jmeter脚本呢? 这个时候,自然而然地想到了万能的ant ...

  8. 性能测试培训:批量执行Jmeter脚本之ant调用

    性能测试培训:批量执行Jmeter脚本之ant调用   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的load ...

  9. Jmeter+Ant+Jenkins接口自动化测试(二)_测试方案设计及jmeter脚本开发

    前言 根据之前部署好的测试环境,进行接口自动化测试的方案设计及Jmeter脚本开发.测试方案设计过程中采用了数据分离和对象分离等思路,因此直接通过特定的测试用例文档来驱动整个自动化接口测试的执行,相关 ...

随机推荐

  1. 安装Redis(Windows版本&Linux版本)

    1.版本: Redis官网上有Linux版本,Redis官网:https://redis.io/download GitHub上有Windows版本,地址是:https://github.com/Mi ...

  2. CPU上下文

    CPU上下文 包括CPU寄存器和程序计数器(Program Counter,PC). CPU寄存器,是CPU内置的容量小.但速度极快的内存. 程序计数器,是用来存储CPU正在执行的指令位置.或者即将执 ...

  3. 美区Apple ID账号共享

    前言 前几天我已经分享了日区的账号,今天我来分享一下美区的账号.说到这个美区的账号,满满的记忆呀!这是我第一个公众号时创建的外服账号,里面的软件比较多,原本想整理一下自己购买了哪些软件的,乍一看,已购 ...

  4. Nginx四层转发vsftp

    1.需要安装stream模块2.在nginx.conf默认配置文件添加如下配置即可stream { log_format tcp '$remote_addr [$time_local] ' '$pro ...

  5. Python之list函数

  6. RabbitMQ相关概念的理解

    1.什么是消息? 消息就是程序(服务)之间传递的数据(图/文/声/像). 2.MQ是什么? MQ(MessageQueue)是指消息队列亦或消息总线.是消息的容器,这个容器的策略是FIFO(先进先出) ...

  7. AC86U kx上网

    AC86U收到很久了,为了能够kx上网免不了一番折腾. 准备 U盘一个, 读写速度要大于30M/s, 用于制作虚拟内存 步骤大致如下: 1.下载koolshare固件 我这里下载的是官改固件:http ...

  8. Dubbo 迈出云原生重要一步 - 应用级服务发现解析

    作者 | 刘军(陆龟)  Apache Dubbo PMC 概述 社区版本 Dubbo 从 2.7.5 版本开始,新引入了一种基于实例(应用)粒度的服务发现机制,这是我们为 Dubbo 适配云原生基础 ...

  9. 面试题:对NotNull字段插入Null值 有啥现象?

    Hi,大家好!我是白日梦. 今天我要跟你分享的话题是:"对NotNull字段插入Null值有啥现象?" 一. 推荐阅读 首发地址:https://mp.weixin.qq.com/ ...

  10. Effective Modern C++ ——条款5 优先选择auto,而非显式型别声明

    条款5 对于auto ,他的好处不仅仅是少打一些字这么简单. 首先在声明的时候, 使用auto会让我们养成初始化的习惯: auto x;//编译不通过必须初始化. 再次对于auto而言,它可以让我们定 ...