性能测试学习

本文详细介绍了JMeter在性能测试中的应用,包括脚本生成、组件使用、接口测试、协议理解、参数化与关联、断言、命令行操作和持续集成。内容涵盖了JMeter的基础知识,如线程组、取样器、配置元件等,并探讨了性能测试的定义、目的、指标和监控。此外,还讨论了性能测试中的常见问题和调优步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  性能测试的根本:性能测试实际上就是模拟客户端发送请求给服务器

一、Jmeter的脚本生成:

一般来说,对于jmeter而言,它的脚本生成方式有三种:

1. 借助第三方工具录制生成:
  – badboy 被淘汰
  – blazemeter,是一个chrome的插件 缺点:国内无法注册账号
2. 使用自带的http代理服务器方式生成;
  (1)第一步:添加线程–线程组
  (2)第二步:添加配置原件–http cookie管理器
  (3)第三步:添加非测试原件–http代理服务器
  (4)第四步:配置http代理服务器并且启动
    端口:由用户指定,在jmeter所在机器中未被占用即可。和被测试的服务器的服务端口没有任何关系。
    目标控制器:是用来指定用于存放脚本的组件,建议选择测试计划–线程组。
    过滤器:
  (5)在客户端进行设置,使得客户端的请求通过代理:Internet选项–连接–局域网设置–勾选为局域网使用代理服务器
    – 地址:填写jmeter代理服务器所在机器的IP地址
    --端口:填写jmeter代理服务器中所设置的端口
3. 抓包手写,有三点要求:
  (1)熟悉协议
  (2)熟悉抓包工具
  (3)熟悉接口测试工具

二、Jmeter的组件:

  jmeter的脚本是由不同的组件构成的。同一种类型的组件的图标是相同的,jmeter中的组件有:

  1. 测试计划:自带组件,jmeter所有的其他类型组件都是必须位于该组件下;

  2. 线程组:必选组件,jmeter是通过该组件来控制线程的数量(执行脚本的线程)、循环次数

  3. 逻辑控制器:可选组件,用来控制脚本的执行逻辑

  4. 取样器:sampler,即请求,属于必加组件。我们要去实现接口测试,则需要根据接口类型选择合适的取样器

  5. 其他组件:配置元件、定时器、前置处理器、后置处理器、断言、监听器,这六大类组件都是辅助组件,都是用来服务于取样器组件的

  6. 配置元件:是用来完成一些基础配置工作:
       – http cookie管理器:是用来实现cookie管理功能
       – http信息头管理器:是用来添加http的信息头

  7. 定时器:和时间控制相关的组件

  8. 前置处理器:运行在请求之前的而一些组件

  9. 后置处理器:运行在请求之后的组件

  10. 断言:是用来实现检查点、断言的组件

  11. 监听器:日志组件,用来管理日志

作用域

作用域是jmeter中六大辅助组件对于取样器组件的生效规则。
定义:辅助组件对于其父组件、所有同级组件的子组件有效。
其中:
  1. 定时器、前置处理器是运行在作用域内的每一个请求之前,和组件的先后无关,运行次数等于请求的次数
  2. 后置处理器、断言是运行在作用域内的每一个请求之后,和组件的先后无关,运行次数等于请求的次数。

三、接口、接口测试

1. 接口的定义?
  广义的定义:所谓接口就是指输入和输出数据的集合。通常来说,这样的定义是相对于UI而言的。
  狭义的定义:狭义的接口就是指系统架构层面,模块和模块之间,组件和组件之间通信的一种定义。这种接口对输入和输出是有严格的定义,一般来说是有概要、详细设计文档的。
2. 什么是接口的测试?
  广义的接口测试:接口测试就是相对于UI测试而言,是指不从UI层面去切入测试,而是直接从接口(通信)层面去切入测试。
  狭义的接口测试:是指针对概要、详细设计文档、接口文档中所定义的各个接口所进行的测试。一般来说,依赖于接口文档。
3. 接口测试需要测试什么?
  接口测试本身只是一种测试方式,他需要完成的测试一般包含以下几点:
  (1)功能测试:接口本身就是一个个功能的具体实现。对于接口的功能测试,我们可以考虑:
    – 入参的分类:必填和非必填
    – 每一个参数:等价、边界进行用例的设计
    – 对于非必填:一般考虑使用因果图或者正交进行组合
    – 对于非必填项: 一般是不考虑组合的
    – 接口之间的业务场景的测试
  (2)安全性:通常来说,接口可以分为内部和外部接口。
    – 内部接口:用户不可触达,只是系统内部之间相互调用的,一般来说安全性要求较低
    – 外部接口:用户可以抵达,一般来说根据业务本身的安全级别,安全性要求相对较高
  (3)性能:对于接口,我们是需要考虑接口的性能,性能测试和接口方式的实现方式是一致的,都是在通信(协议)层面去模拟用户的请求。
   4. 接口测试对于测试人员

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值