性能测试之JMeter的使用(一)概述与jmeter代理服务器开发脚本

性能测试概述

性能测试也是软件测试的一种,它的主要方向时测试系统在一定的负荷压力下,系统的响应时间,吞吐量,稳定性,系统的可扩展性等性能指标。
在这里插入图片描述
从不同角度看性能测试:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
性能测试与项目:

  • 性能测试做的成功与否,与测试方法和测试自身所关联的项目背景都有关系。

  • 若不理解项目背景,测试人员仅仅靠直觉来猜想哪些是重要的,这样很容易造成背离重要的测试点,浪费大量的时间和精力在其它方面上,从而导致项目失败。

  • 在这里插入图片描述

性能指标

在这里插入图片描述

  • 响应时间:对请求作出响应所需要的时间,是用户感知软件性能的主要指标。
    在这里插入图片描述
    N:传输时间,A:处理时间,N和A加+客户端里呈现的时间起来等于响应时间。
    响应时间包括:(用户角度)
    1.用户客户端的呈现时间
    2.请求/响应数据网络传输时间
    3.应用服务器处理时间
    4.数据库系统处理时间
    响应时间多少合理?
    对于一个web系统,普遍接受的响应时间标准为2/5/8秒。
    2秒钟之内响应客户是非常好的,5秒钟之内响应客户是可以接受的,8秒时客户能接受的响应的上限。

  • 并发用户数
    在这里插入图片描述
    并发:用于从业务的角度模拟真实用户同时访问

    并发数:同时访问系统的用户数
    在C/S或B/S结构的应用,系统性能主要由服务器决定,服务器在大量用户同时访问时,压力最大。

    并发分为:
    1.严格并发—同一个请求
    2.广义并发—不是同一个请求
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

吞吐量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

系统性能计数器

在这里插入图片描述

思考时间

在这里插入图片描述

为什么使用Jmeter?

在这里插入图片描述

  • 1、多线程框架-支持多并发操作
  • 2、由于服务器模拟负载
  • 3、支持web、数据库、FTP服务器系统的性能测试
  • 4、开源、纯JAVA,可二次定制化开发

线程组中各项说明

在这里插入图片描述
在取样器错误后要执行的动作:
**a.继续:**某请求遇到错误后,其他请求继续执行。(在大量用户并发的时候,某个请求失败属正常现象)
b.启动下一进程循环:如遇到错误,后面的请求将不再执行,等下一轮再开始执行。例如线程组中包含登录和发帖2个请求,若登录请求失败,发帖请求将不再执行,等下一次重新迭代,从登录开始执行。
**c.停止线程:**遇到错误就停止线程再也不执行了。例如线程组中有50个线程,其中某一个线程的某个请求遇到错误即停止线程不再执行,剩下49个线程继续执行。若线程错误的比较多,剩余的线程就较少,此时负载数量就不足了,测试结果不满足测试要求,因此一般不会勾选此项。
**d.停止测试:**某个线程某个请求遇到错误,停止所有线程,也就是停止整个测试,但是线程中的余下的请求还是会执行完再停止。例如线程1中包含登录和发帖2个请求,其他线程遇到错误,现在要全部停下来,线程1发帖请求还是会执行,然后再停止测试。
**e.立即停止测试:**遇到错误立即停止所有线程,即整个测试。

线程属性:
a.线程数:一个线程相当于一个虚拟用户
**b.Ramp-Up时间(秒):**线程启动开始运行的时间间隔,单位秒。即所有线程在多长时间内全部启动。例如线程60个,Ramp-Up Period设置为20s,那么每秒启动60/20=3个线程,不填写默认设置为0,即所有线程在开启场景后立即启动,并发。
c.循环次数:勾选forever,将一直执行,除非手动停止或崩溃。
(此处设置的3个线程属性与并发相关。线程数与循环次数的积也就是总共并发的请求次数,而Ramp-Up是分配线程的时间。比如线程数10,时间是5秒,循环2次,也就是说,一秒会执行2个线程*2次循环,一秒并发4次请求。)

**延迟创建线程直到需要:**默认不勾选,测试开始的时候,所有线程就被创建完。勾选了此选项,那么线程只会在合适的需要用到的时候创建。

调度器:
a.持续时间:测试计划持续多长时间。
b.启动延时:点击启动按钮后,仅初始化场景,不运行线程,等待延时时间到才运行。

Jmeter脚本

通俗:用户操作被测软件系统某场景的动作流程
Jmeter:用户操作被测软件系统某场景的请求

录制过程:

  • 首先将浏览器设置代理,代理服务器为本机地址。
    在这里插入图片描述
  • 此时浏览器无法访问网站
    在这里插入图片描述
  • 设置http代理
    在这里插入图片描述
  • 添加线程组,并保存线程组
    在这里插入图片描述
    -代理服务器中选择线程组,然后点击启动,即可代理访问,可以抓到包,录制到的脚本放在上一步线程组文件保存的地方,若无法访问https 可以在证书中添加jmeter证书。
    在这里插入图片描述
    在这里插入图片描述

导入这个证书:
在这里插入图片描述

-设置过滤器
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值