首页 > 其他分享 >浅谈性能测试

浅谈性能测试

时间:2023-12-08 16:58:08浏览次数:32  
标签:数据量 负载 浅谈 性能 系统 并发 测试

背景

这两年除了基础的功能测试,越来越多的企业也开始关注专项测试,例如性能测试

我再我们年初和年终的领导改进建议中都提到,加强自动化和性能的学习和工作输出,今天浅聊下~

1.性能测试概念(来自百度)

性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

负载测试压力测试都属于性能测试,两者可以结合进行。

通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。

压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。

-----------------------------------------------------------------------------------------------------------------------------------------------

2.实际应用类型

第一种不需要借助自动化的:

1.在实际页面模拟客户实际场景,主要用来压力摸底

一个下单系统(销售使用),测试出下单系统中最多加多少产品,提交订单时候会报错,摸底出系统最大负载,提前告知销售,下单时候分批,避免订单超时无法处理-----与客户深度合作,提前告诉性能风险,以及应对方式

2.系统页面加载时间过慢,比如查询时间过长(没有遵循2/5/8原则)

 第二种一般使用工具

1.持续运行8h以上,看系统是都依旧正常(比如每1min请求一次,自动运行24h以上)

2.并发测试,同时设置xx并发量,请求同一个接口(比如秒杀)

3.逐步加压,看系统服务什么时候会挂(下图场景为:100个用户,在1h内连续,不停循环请求,再继续加的200,300,500等,不加时间的话就是100个并发请求完成后停止)

3.具体场景

1.一般是单场景先测

2.再进行流程性的组合场景持续

4. 实操

4.1制定性能测试指标策略

有接口埋点的数据:

 无接口埋点的数据:

 4.2测试范围识别

 4.3测试类型识别

  • 基准测试
    基准测试:系统较低压力时,查看系统的运行状况并记录相关数做为基础参考。
  • 负载测试
    负载测试是通过逐渐增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统能承受的最大负载量的测试。
    目标:确定系统的性能容量(如系统在保证一定响应时间情况下能够允许多少并发用户的访问),系统各项指标,如吞吐量、响应时间、CPU负载、内存使用等如何决定系统的性能。
  • 压力测试
    压力测试通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
    目标:压力测试是为了发现在什么条件下您的应用程序的性能会变得不可接受。
  • 并发性能测试
    负载测试和压力测试通常被合称为并发性能测试。
    即大并发场景下的系统性能,多用户同时访问时,检测系统是否能够稳定运行。
    平均并发用户数 C = nL/T
    n:平均每天访问用户数(login session的数量);
    L:一天内用户从登录到退出的平均时间(login session的平均长度);
    T:考察的时间段长度(一天内多长时间有用户使用系统);
    并发用户数峰值:C'≈C+3*根号C
  • 大数据量测试
    大数据量测试包括独立的数据量测试和综合数据量测试。
    独立的数据量测试指针对某些系统存储、传输、统计、查询等业务进行的大数据量测试。
    综合数据量测试指系统在具备一定数据量时,在负载压力测试下,考查业务是否能够正常运行的测试。
    目标:测试数据量较大时系统的性能状况。
  • 容量测试
    容量测试的目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数),系统在其极限状态下没有出现任何软件故障且能正常运行。
  • 配置测试
    通过对被测系统软硬环境的调整,了解各种不同环境对系统性能的影响程度,从而找到系统各项资源的最优分配原则。
  • 稳定性测试
    稳定性是通过给系统加载一定的压力,让系统持续运行一段时间(通常为7x24小时),检测系统是否能够稳定运行。稳定性测试也称为疲劳强度测试,属于可靠性测试的范畴。
    目标:测试系统长时间无故障稳定运行的能力
  • 失效恢复测试
    失效恢复测试是针对有冗余备份或负载均衡的系统来说,检验如果系统局部发生故障,系统灾备措施是否可以正常启动,用户是否可以继续使用。(如:集群、热备等)
    目标:通过实施失效恢复测试,评估系统的健状性和可恢复性。

在实际项目当中,可根据不同的性能测试目的,选作相对应的性能测试方式。

 

 

 

 

 

 



 

标签:数据量,负载,浅谈,性能,系统,并发,测试
From: https://www.cnblogs.com/yexy-a/p/17888376.html

相关文章

  • 软件测试/人工智能|一文告诉你Python字典知识
    前言字典(Dictionary)是一个非常重要且灵活的工具。我们可以通过字典来存储存储键-值对,并且能够高效地根据键来访问、修改或删除值。让我们一起深入了解Python字典吧!什么是字典?字典是Python中的一种数据结构,用于存储键-值对。每个键都与一个值相关联,这种映射关系让我们能够......
  • 软件测试/人工智能|一文告诉你Python集合相关知识
    前言集合(set)是Python中一种重要的数据结构,它提供了存储唯一元素的容器,集合能够让我们高效地执行诸如成员检测、交集、并集等操作。让我们一起深入了解Python中的集合吧!什么是集合?集合是Python中的一种数据结构,类似于数学中的集合概念。它是一组无序且唯一的元素的集合,不允......
  • 软件测试/人工智能|使用 Pip 管理 Python 包
    前言Python是一门强大而灵活的编程语言,其社区拥有数量庞大且多样化的第三方库和工具,这些库可以让我们在项目中快速、高效地开发。pip是Python的包管理工具,我们可以使用pip轻松地安装、升级和管理这些第三方包。什么是Pip?Pip是Python包索引(PyPI)的客户端工具,可以方便地从......
  • 软件测试/人工智能|一文告诉你Python元组相关操作
    前言当我们谈及Python数据结构时,元组(tuple)是一个重要且常用的概念。元组类似于列表,但是它是不可变的数据结构,其中的元素不能被修改。让我们深入了解一下元组的各种方面。什么是元组?在Python中,元组是由逗号分隔的值组成的有序集合。和列表类似,但不同的是,元组是不可变的,一旦创建......
  • 多开工具对应用程序性能的影响与优化
    多开工具对应用程序性能的影响与优化摘要:随着计算机技术的不断发展,多开工具逐渐成为一种常见的软件应用。然而,使用多开工具可能会对应用程序的性能产生一定的影响。本文将探讨多开工具对应用程序性能的影响,并提供一些优化方法,以改善应用程序在多开环境下的表现。引言:多开工具......
  • 角位移电位器测试仪的设备功能
    设备功能:·产品电气连续性测量:频率1~5k之间可调,运动速度、采集周期可调;·接触电阻(电流法)测量:测量电流可设置(最小分辨率1mA);·噪声电阻测量:阻值范围:100Ω~500kΩ,采样频率2.5khz;·接触电阻变化-C.R.V测量:测量电流:1.0mA;·输出平滑性测量:阻值范围:100Ω~50kΩ;·总阻测量:可测阻值范围:100......
  • AMD 锐龙5 7500F VS. Intel 酷睿i5-14600K对比:整机价格相差2000 游戏性能基本持平
    一、前言:ITX主机是该选Intel还是AMD平台?时代在进步,随着机械硬盘逐渐淡出主流市场,再加上主板的集成度越来越高,ATX机箱早已不是刚需。相反,越来越多的人开支搭建自己喜欢的ITX平台,而一台高颜值的ITX主机放在书桌上,也是一道亮丽的风景线。当然,受限于散热能力,ITX主机需要合理的控制......
  • 浅谈WPF之控件拖拽与拖动
    使用过office的visio软件画图的小伙伴都知道,画图软件分为两部分,左侧图形库,存放各种图标,右侧是一个画布,将左侧图形库的图标控件拖拽到右侧画布,就会生成一个新的控件,并且可以自由拖动。那如何在WPF程序中,实现类似的功能呢?今天就以一个简单的小例子,简述如何在WPF中实现控件的拖拽和拖......
  • ACPM高效C++组件管理让音视频终端SDK性能更好、稳定性更高
    本专栏将分享阿里云视频云MediaBox系列技术文章,深度剖析音视频开发利器的技术架构、技术性能、开发能效和最佳实践,一起开启音视频的开发之旅。本文为MediaBox技术架构篇,重点从 ACPM介绍、技术架构以及高效管理等方面,介绍如何通过MediaBoxACPM的高效组件管理,来提升音视频终端SDK......
  • xcat批量创建和部署vmware esxi虚机(仅测试esxi)
    安装参考xcatdocker部署使用,已添加esxi支持https://www.cnblogs.com/leaus/p/17884674.html编辑hosts表添加ip和主机名对应vi/etc/hosts192.168.1.101node01192.168.1.102node02添加节点,配置创建信息nodeaddnode01groups=nodevm,allnodeaddnode02groups=nodevm......