首页 > 其他分享 >软件测试–性能测试

软件测试–性能测试

时间:2024-09-25 16:53:27浏览次数:9  
标签:性能 系统 用户 测试 CPU 用户数 软件测试


如果文章哪里有错误描述或表达错误,还请各位指出来,欢迎点赞,欢迎评论

什么是性能

使用来描述产品除功能外的所具有的速度,效率和能力的综合能力评价

什么是性能测试

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

性能测试的目的

识别系统的弱点,评估系统给能力,发现系统性能瓶颈,提高系统的稳定性和可靠性

性能测试内容

性能测试通过包括一下九个方面

性能测试:表示在给定的基准环境下,目标系统响应客户服务的最快速度或最好表现

压力测试:是一种破坏性测试,它故意让软件在比较少的资源环境下运行,比如低内存,慢CPU,考验程序直至程序无法运行,从而发现软件缺陷,

负载测试:表示在目标系统正常服务的前提下,目标系统所能承担的最大服务负荷数量,也就是最大并发数量,最终分析系统性能瓶颈

稳定性测试:表示在给定的负载的情况下,有外界或内部非正常的干扰,系统所能够提供稳定服务的能力

并发测试:测试多个用户同时访问同一个应用,同一个模块,或者同一个数据记录时,是否存在死锁或其他性能问题

基准测试:通过设计合理的测试方法,测试工具和测试系统,实现对一类测试对象的某项指标进行定量的和可对比的测试

疲劳测试:通过让软件在一定访问量情况下长时间运行,以检验系统性能在多长时间会出现明显下降,主要目的是验证系统运行的可靠性

数据量测试:通过让软件在不同的数据量情况下运行,以检测系统性能在各种数据量情况下的表现,主要目的是找到支持系统正常工作的数据量

配置测试:配置测试主要是针对硬件而言,了解各种不同环境对系统性能影响的程度,从而找到系统各项资源的最优分配原则,而判断出最值得进行的调优操作

怎么衡量性能

响应时间:从用户发送一个请求到用户接收到服务器返回的响应数据这段时间就是响应时间

吞吐量:单位时间内系统处理的客户端请求的数量

并发数:

1,并发用户数:某一时刻同时向系统提交请求的用户数,提交的请求可能是同一个场景或功能,也可以不是同一个功能或场景

2,在线用户数:某一时间内访问系统的用户数,这些用户并不一定同时向系统发送请求

3,系统用户数:系统注册的总用户数量

系统用户数>=在线用户数>=并发用户数

资源利用率:指的是对不同系统资源的使用程度,通常以占用最大值的百分比来衡量

1,CPU,主要负责相关事情的判断和以及实际处理的机制

2,内存,将收集到的信息记录起来,以供CPU进行判断,是临时的,访问速度快,如果关机或者断电,储存在这里的数据将会消失

3,磁盘IO,将重要的数据保存起来,以便再次使用这些数据,永久的保存,关机或断电数据不会消失,速度慢

4,网络

请求访问数量:即向服务器发送请求的虚拟用户数量

场景:性能测试过程中为了模拟真实用户的业务处理过程的一系列动作的集合

事务:一般是指要做的或所做的事情,在关系数据库一个事务可以是一条SQL语句,事务所具有的四大属性:原子性,一致性,隔离性,持久性,成为ACID特性

每秒事务数:每秒系统处理事务的数量,这项指标可以确定系统在任何给定的时间段里事务处理能力

系统负载:即系统所能容忍的最大用户并发数量,也就是在正常的响应时间中,系统能够支持的最多的客户端的数量

CPU利用率:CPU利用率分为用户态,系统态,空闲态,分别表示CPU处于用户态执行的时间,系统内核执行的时间,空闲系统进程执行的时间。那么CPU利用率就是:CPU执行非系统空闲进程的时间/CPU的总执行时间

最佳用户数:系统的最佳状态,即系统在当前的资源配置情况下(服务器资源,客户端资源,网络资源)所能处理的最大用户事务数量,对系统资源的占用率,系统的处理能力,用户等待的响应时间都处于最优的配置下

最大用户数:依据系统当前的配置(硬件配置,网络配置),所能容纳的最大用户数量,超过这个用户的数量,系统的处理能力就达到一个瓶颈

点击数:每秒钟用户向Web服务器提交的HTTP请求数

这个指标是Web应用特有的一个指标,Web应用是请求-响应模式,用户发出一次请求,服务器就要处理一次,那么,点击率越大,对服务器的压力越大,点击率只是一个性能参考指标

PV:访问一个URL,产生一个PV,(Page View ,页面访问量)形容网站规模的重要指标

UV:作为一个独立的用户,访问站点的所有页面均是一个UV(Unique Visitor用户访问)

常见的性能问题

响应时间短

加载时间长

瓶颈

可伸缩性差

软件配置问题

磁盘使用情况

操作系统限制

网络配置不佳

内存利用率

CPU利用率

硬件资源不足

性能测试注意事项

1,服务器端和客户端一定要在同一个局域网内,否则网络因素会成为性能测试的瓶颈

2,在性能测试脚本中要注意检查点的设置,否则都不清楚脚本是否真的成功执行操作

3,设置参数化和关联是性能测试脚本调通的关键

4,录制脚本时通常会包括一些think time ,因此在回放脚本时,注意在runtime setting中设置忽略think time,否则会影响测试数据的准确性,比如响应时间

5,尽量每个页面设置一个transcation,否则不知道哪个页面最慢

标签:性能,系统,用户,测试,CPU,用户数,软件测试
From: https://blog.51cto.com/u_12021001/12110711

相关文章

  • 性能测试 | JMeter的运行
    简介JMeter运行环境要求Java版本:JMeter是基于Java开发的,所以需要安装Java运行环境(JRE)或Java开发工具包(JDK)。推荐使用Java8或更新版本。系统要求:JMeter可以运行在Windows、Mac和Linux等操作系统上。具体的要求可以根据JMeter的官方文档来确定。内存要求:JMeter在......
  • 人工智能 | 手工测试用例转Web自动化测试生成
    简介在传统编写Web自动化测试用例的过程中,基本都是需要测试工程师,根据功能测试用例转换为自动化测试的用例。市面上自动生成Web或App自动化测试用例的产品无非也都是通过录制的方式,获取操作人的行为操作,从而记录测试用例。整个过程类似于但是通常录制出来的用例可用性、可维......
  • Websocket测试工具,在线调试 - 在线工具
    WebSocket测试工具是用于测试WebSocket连接、发送和接收消息的工具。它们通常提供一个简单的用户界面,使开发人员能够快速验证WebSocket服务器的功能和性能。在线Websocket测试工具体验地址:https://www.ewbang.com/websocket/index.html什么是WebSocket?WebSocket是一种在单......
  • 作为一名测试工程师如何学习Kubernetes(k8s)技能
    前言Kubernetes(K8s)作为云原生时代的关键技术之一,对于运维工程师、开发工程师以及测试工程师来说,都是一门需要掌握的重要技术。作为一名软件测试工程师,学习Kubernetes是一个有助于提升自动化测试、容器化测试以及云原生应用测试能力的重要过程。以下是一个系统性的学习路径......
  • 如何打造高效的测试组织
    如今随着用户对产品质量和体验的要求越来越高,很多公司都建立了自已的测试组织,但随着产品的迭代周期越来越短,客户对产品交付质量的要求越来越高,软件测试团队的管理成了各公司研发部门的难题,主要面临的问题如下:开发交付的软件代码,质量差,测试跟着做集成,上线交付质量无底线,是开发的......
  • 正点原子RK3588(一)——开机测试+AI初探
    一、adbadbshell,进入板子的根目录exit,退出到linuxadbpull板子linux(从板子到linux)adbpushlinux板子(从linux到板子)二、测试AI功能2.1resnet18importcv2importnumpyasnpimportplatformfromsynset_labelimportlabelsfromrknnlite.apiimportRKNNLite#decic......
  • 优化Windows 10 Direct3D性能的注册表;优化Direct3D和整体游戏性能,可以从图形渲染、GPU
    优化Windows10Direct3D性能的注册表.reg文件示例CopyCodeWindowsRegistryEditorVersion5.00;优化Direct3D性能[HKEY_CURRENT_USER\Software\Microsoft\Direct3D]"DisableDirectDraw"=dword:00000001"MaxTextureWidth"=dword:00000400"MaxText......
  • C#|.net core 基础 - 扩展数组添加删除性能最好的方法
    C#|.netcore基础-扩展数组添加删除性能最好的方法 合集-C#|.netcore基础(6)  今天在编码的时候遇到了一个问题,需要对数组变量添加新元素和删除元素,因为数组是固定大小的,因此对新增和删除并不友好,但有时候又会用到,因此想针对数组封装两个扩展方法:新增元素与......
  • Redisearch 入门指南构建高性能搜索应用
    1.概述Redisearch是一个强大的全文搜索引擎,基于流行的Redis数据库构建,专为高效的数据检索而设计。它结合了Redis的快速存储能力和搜索引擎的复杂查询功能,使得开发者能够在海量数据中实现实时搜索体验。Redisearch支持丰富的特性,包括模糊匹配、布尔搜索、聚合、地理......
  • 使用.NET并行任务库(TPL)与并行Linq(PLINQ)充分利用多核性能
    使用.NET并行任务库(TPL)与并行Linq(PLINQ)充分利用多核性能 前言最近比较闲,(项目要转Java被分到架构组,边缘化人员,无所事事哈哈哈哈)记录一下前段时间用到的.NET框架下采用并行策略充分利用多核CPU进行优化的一个方法起因是项目中有个结算的方法,需要汇总一个月的数据......