今天通过一个简单的例子梳理一下用jmeter进行测试的流程

1.确定被测网站:gogomall.com

2.制定测试指标:响应时间和错误率

3.设计测试场景

4.具体测试步骤

1>创建一个测试计划,测试计划里创建线程组,线程组中再创建取样器,一般是http请求,创建成功如下图:

下面来解释一下http请求的设置:

①名称:用于标识一个取样器,建议使用一个有意义的名称,自己能够区分

②注释:仅用于记录用户可读的注释信息,对测试无任何作用

③协议:向目标服务器发送http请求时的协议,可以是http或者是https,默认为http

④服务器名称或IP:http请求发送的目标服务器名称或IP地址

⑤端口号:目标服务器的端口号,默认值为80

⑥方法:发送http请求的方法,可用方法包括GET,POST,HEAD,PUT.......等

⑦路径:目标url路径,不包括服务器地址和端口

⑧内容编码:内容的编码方式

⑨自动重定向:如果选中,当发送http请求后得到的响应是302/301时,jmeter自动重定向到新的页面

⑩使用KeepAlive(持久常连接):如果选中,jmeter和目标服务器之间使用Keep-Alive方式进行HTTP通信,默认选中

⑪对POST使用multipart/form-data:当发送HTTP   POST请求时,使用multipart/from-data方法发送,默认不选中

⑫同请求一起发送参数:在请求中发送url参数,用户可以将url中所有参数设置在本表,表中的每一行是一个参数值对(对应url中的名称1=值1)

⑬同请求一起发送文件:在请求中发送文件,通常,HTTP文件上传行为可以通过这种方式模拟

⑭从HTML文件获取所有内含的资源:当该选项被选中时,jmeter在发出HTTP请求并获得响应的HTML文件内容后,还对该HTML进行解析并获取HTML中包含的所有资源,默认不选中,如果用户只希望获取页面中的特定资源,可以在下方的【网址必须匹配】文本框中填入需要下载的特定资源表达式,这样,只有能匹配指定正则表达式的url指向资源会被下载

⑮保存响应为MD5哈希:选中该项,在执行时仅记录服务端响应数据的MD5值,而不是记录完整的响应数据,在需要进行数据量非常大的测试时,建议选中该项以减少取样器记录响应数据的开销

2>测试场景设计—线程组设置

①线程数:虚拟用户数

②Ramp-Up时间:设置的虚拟用户数需要多长时间全部启动完

③循环次数:每个线程发送请求的次数,如果勾选了【永远】,那么所有线程会一直发送请求,一直到选择停止运行脚本

④调度器:可以更灵活的设置运行时间等

3>设置监听器

4>运行脚本

点击启动,开始执行测试

5>查看报告

报告数据详解:

①Label:定义HTTP请求名称

②Samples:表示这次测试中一共发出了多少个请求,我设置的20个,循环10次,所以是200个

③Average:平均响应时长,默认情况下是单个请求的平均响应时长,当使用了事务控制器时,也可以以事务为单位显示平均响应时长

④Median:中位数,也就是50%的响应时长

⑤90%Line:90%用户的响应时长

⑥95%Line:95%用户的响应时长

⑦99%Line:99%用户的响应时长

⑧Min:访问页面的最小响应时长

⑨Max:访问页面的最大响应时长

⑩Error%:错误请求的数量/请求的总数

⑪Throughput(吞吐量):默认情况下表示每秒完成的请求数,当使用了事务控制器时,也可以表示每秒处理的事务个数

⑫Received KB/sec:每秒从服务器端接收到的数据量

⑬Sent KB/sec:每秒向服务器端发送的数据量

注:jmeter中,时间单位都为毫秒

6>保存报告,注意,文件后缀为.jtl

注:上面的例子中只有一个HTTP请求,所以监听器放线程组下或者HTTP请求下结果都是一样的,当请求多了之后,可以在每个请求下都添加一个监听器

jmeter(4)——简单测试流程的更多相关文章

  1. 压力测试 Jmeter的简单测试及常用查看结果参数介绍

    (1)保存方案 (2)创建线程组 线程组用来模拟用户的并发访问 线程组主要包含三个参数:线程数.准备时长(Ramp-Up Period(in seconds)).循环次数. 线程数:虚拟用户数.一个虚 ...

  2. jmeter测试流程整理

    背景 整理jmeter脚本编写流程,注意事项,常用组件,常见问题. 参看链接:https://www.cnblogs.com/pwj2lgx/p/10282422.html 参看:processOn思 ...

  3. Jmeter教程 简单的压力测试

    Jmeter教程 简单的压力测试:http://www.cnblogs.com/TankXiao/p/4059378.html

  4. 使用JMeter进行简单的压力测试

    一.压力测试 顾名思义:压力测试,就是  被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况). 比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速 ...

  5. jmeter教程--简单的做压力测试

    Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 什么是压力测试 顾名思义:压力测试,就是  被测试的系统,在 ...

  6. 【JMeter】JMeter进行简单的数据库(mysql)压力测试

    JMeter进行简单的数据库(mysql)压力测试 1.点击测试计划,再点击“浏览”,把JDBC驱动添加进来: 注:JDBC驱动一般的位置在java的安装地址下,路径类似于:    \java\jre ...

  7. Jmeter实现简单web负载测试

    Jmeter实现简单web负载测试 简介 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. ...

  8. Jmeter教程 简单的压力测试【转】

    Jmeter教程 简单的压力测试[转] Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 阅读目录 什么是压力 ...

  9. 简单几招助您加速 ARM 容器应用开发和测试流程

    随着5G时代的临近,低延迟网络.AI硬件算力提升.和智能化应用快速发展,一个万物智联的时代必将到来.我们需要将智能决策.实时处理能力从云延展到边缘和IoT设备端.阿里云容器服务推出了边缘容器,支持云- ...

随机推荐

  1. Android studio 报错 installation failed with message failed to finalize session:INSTALL_FAILED_INVALID_APK 解决方法

    解决方案: File->Setting->Build->Instant Run

  2. (zxing.net)一维码Code 93的简介、实现与解码

    一.简介 一维码Code 93: Code 93码与Code 39码的字符集相同,但93码的密度要比39码高,因而在面积不足的情况下,可以用93码代替39码.它没有自校验功能,为了确保数据安全性,采用 ...

  3. 虚拟化 - Hyper-V

    不能和VMware.VirtualBox同时使用 网络 交换机其实就是指网卡,只不过是虚拟的 内部交换机 外部交换机

  4. 跨域处理之Jsonp

    一.认识Jsonp JSONP是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式 ...

  5. 安卓 往SD卡里写文件不能及时更新的问题

    我们做Android开发时奖保存图片到SD卡,但是Gallery中不能及时显示 下面我找到了问题所在然后解决了这个问题. 当保存图片后打开gallery时,有的会自动给你刷新,有的不行,这样就导致图片 ...

  6. 【ocp-12c】最新Oracle OCP-071考试题库(40题)

    40.(8-7) choose two Which two statements are true regarding views? (Choose two.) A) A simple view in ...

  7. 删除标注关联仿dda命令DIMDISASSOCIATE

    static void sk_ARXTestXDatamydimassoc(void) { // Add your code for command sk_ARXTestXData.mydimasso ...

  8. Maven镜像更换为阿里云中央仓库(精)

    前言 maven仓库默认在国外,使用难免很慢,尤其是下载依赖的时候,换为国内镜像,让你感受飞一般的感觉.国内支持maven镜像的有阿里云,开源中国等,这里换为阿里云的. 更换 修改maven配置文件s ...

  9. java使用Redis5--分布式存储

    Redis实现分布式存储的方法主要是采用一致性哈稀分片(Shard),将不同的key分配到不同的redis server上,达到横向扩展的目的. package redis; import java. ...

  10. json 模块的基本使用学习

    内容大纲 1: 为什么要学习json模块 >1:因为网络之间的通信,还有不同语言之间的相互内容沟通,需要用到json 模式进行沟通 >2:写入部分文件用json文件保存, 2:json的序 ...