性能测试--1、为什么进行性能测试

为什么进行性能测试

应用程序糟糕的性能表现,通常不能让企业达到预期的利益。

以最终用户的眼光看待性能

关注“应用程序”的性能,此处的“应用程序”指的是应用程序的所有部分(硬件、操作系统、系统架构、中间件、应用程序、网络等),而非指某一部分。

性能度量

性能度量的两种类型:服务型、效率型。

  • 服务型指标:可用性和响应时间,衡量的是应用程序为用户服务效果的好坏。

    • 可用性(Availability):应用程序对于最终用户的可用时间。可用性不好,意味着最终用户无法有效地使用该应用系统,是很严重的问题。
    • 响应时间(Response Time):一般指系统响应时间(平均响应时间、90%的平均响应时间、方差等),即从用户端发起请求到接收到应用程序给出完整响应所经过的时间。
  • 效率型指标:吞吐量和利用率,衡量的是应用程序在应用架构基础上对发挥效率的高低。
    • 吞吐量(Throughput):应用程序在单位时间内能处理的请求数量。例如,在一段特定的时间内对某个接口请求的次数。
    • 利用率(Utilization):占用系统资源的百分比。例如,当100个用户同时在线时,消耗了多少网络带宽,以及在服务器上内存、CPU、磁盘等使用情况。

性能标准

关于性能好坏的行业标准,没有这样的指导标准存在。不过,业内倒有一个约定俗成的标准,即响应时间的临界点为2秒,尤其对于 B/S 应用。

糟糕性能原因分析

性能问题通常会比较晚才发现,而且越晚发现,解决成本就越高。

性能测试成熟度级别

  • 救火(Firefighting):应用程序发布前很少或从来没有进行过性能测试的情况。所有性能缺陷(100%)都在生产环境上发现并解决。
  • 性能验证(Performance Validation):公司为性能测试单独安排了一段时间,而不是在产品的后期才开始进行性能测试。因此,在研发过程中,仍然有相当多的性能缺陷被发现( 30% )。这是当前绝大多数公司的做法。
  • 性能驱动(Performance Driven):在应用程序生命周期中的每一阶段都考虑了性能。因此,当系统上线后,出现的性能缺陷就不会太多( 5% )。性能驱动(Performance Driven)级别是所有企业应该追寻的目标。

糟糕性能的原因

  • 系统设计阶段缺少性能方面的考虑(考虑整体系统集成后的性能);
  • 直到最后一刻才进行性能测试(性能测试越早越好);
  • 对系统的容量或规模没有足够的考虑(最终用户的规模和分布);
  • 对性能峰值预期偏低(12306);
  • 性能测试还不规范,没有有效的方案参考或实施;
  • 没有使用性能测试自动化工具。

根本原因:在应用程序的整个生命周期中,性能测试未能得到应有的重视。

性能测试的用户概念

  • 系统用户数:指所有可能访问这套系统的用户数,也叫系统的全部用户数。
  • 在线用户数:指同时访问这套系统的用户数量。
  • 并发用户数:在一个时间切面上同时向这套系统发起请求的用户数。

参考文档

  • 《应用程序性能测试的艺术》

原文地址:https://www.cnblogs.com/daodaotest/p/12442151.html

时间: 2024-08-02 08:51:26

性能测试--1、为什么进行性能测试的相关文章

零成本实现WEB性能测试(一)性能测试基础

1.1 初识性能测试 概念:负载测试&压力测试. 目的:评估系统的能力,识别系统弱点,系统调优,检测问题,验证稳定性. 分类:负载测试,压力测试,容量测试 B/S指标: Avg Rps,平均每秒钟的响应次数=总请求数/秒数 Avg time to last byte per terstion(mstes),平均每秒业务脚本的迭代次数 Successful Rounds,成功的请求 Failed Rounds,失败的请求 Successful Hits,成功的点击次数 Failed Hits,失败

性能测试第二章:性能测试关注点

1.更好的理解性能测试的作用和价值 2.软件测试的作用和价值:产品.用户 产品的角度:主要关注研发过程,尽可能早的发现问题,产品交付.功能完善 用户角度:用户使用体验,用户反馈收集和持续的改善 性能测试关注点: 1.跟用户体验直接挂钩的:响应时间,侧面的反应了服务器端的处理速度 2.服务器端资源的使用情况 3.数据库端的资源的使用情况 4.整个系统的最大访问用户数量 5.最大业务处理数量,一般来说用户数量越多,处理业务数量也会更多一些,重点关注的是系统的一个核心业务,最核心的部分 6.考察系统能

性能测试工具 Web Service 性能测试工具比较

[转自]https://testerhome.com/topics/3003 背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力(请求数/秒).以微信服务器为例,每个用户用独立的登录token,做各种操作,比如刷消息.发消息.看朋友圈等. 希望该性能测试工具符合如下要求: 测试脚本能力,最好是Python/Ruby等最常用的 每个并发实例能使用不同参数 CLI启动测试,这对自动化测试很重要 Session支持,也就是第一个请

JMeter全程实战、性能测试实战、分布式性能测试、真实案例分析

测试需求描述 1. 本次测试的接口为http服务端接口 2. 接口的主要分成两类,一类提供给查询功能接口,一类提供保存数据功能接口,这里我们举例2个保存数据的接口,因为这两个接口有关联 性,比较有代表性: 保存信用卡账户信息接口: 传入参数: args={ "clientNo":"434343556", "alias": "**信用卡2", "cardName": "长城*****卡2"

性能测试:常见的性能测试缺陷

性能测试,是结合被测系统应用架构.业务场景和实现细节.逻辑,对软件响应时间.处理速率.容错能力等进行分析测试,找到系统的性能瓶颈,并确认问题得到解决的过程. 由于工作需要,对性能测试缺陷分类进行了整理,这篇博客,聊聊常见的性能缺陷以及表现方式... 性能测试缺陷分类 缺陷类型 缺陷描述 硬件 磁盘空间 CPU IO读写速率 内存 网络 带宽 网络波动 CDN 延时 丢包 应用 JVM 代码逻辑 配置 JDK版本 底层配置 参数配置 数据库 索引 锁 表空间 慢SQL 数据量 中间件 超时 线程池

JMeter深入进阶性能测试体系,接口性能测试,各领域企业实战

jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单.因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以.jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在linux/windows/macos上都可以使用. ??jmeter可以做接口测试和压力测试.其中接口测试的简单操作包括做http脚本(发get/post请求.加cookie.加header.加权限认证.上传文件).

性能测试二十一:性能测试环境之mysql

在正常工作中,mysql应该部署到 一台独立的服务器上,不与tomcat共用服务器,由于成本原因,现部署到一起 为避免出错引起麻烦,先备份: 一:环境清理:先卸载系统自带的mysql 停止mysql:service mysql stop 1.查找以前是否装有mysql:命令:rpm -qa|grep -i mysql 可以看到mysql的几个包:qt-mysql-4.6.2-26.el6_4.i686perl-DBD-MySQL-4.013-3.el6.i686MySQL-client-5.6.

性能测试基础(一)

随着软件行业的快速发展,现代的软件系统越来越复杂,功能越来越多,测试人员除了需要保证基本的功能测试质量,性能也随越来越受到人们的关注.但是一提到性能测试,很多人就直接连想到Loadrunner.认为LR就等于性能测试,其实这是不对的.LR只是性能测试的一个工具,但性能测试不仅仅是LR.本文会从以下几个方面介绍基础的性能测试理论,后续也会持续更新相关文章,尽量理论结合实践,让性能测试学习不在是工具的学习. 目录: 一. 什么是软件性能 二.不同群体眼中的性能 三.性能测试类型 四.性能测试应用场景

性能测试个人的一些想法整理

性能测试定义: 通过一定的工具结合相应的测试方法,对部署的系统应用进行测试,发现系统应用内部存在的代码逻辑问题及应用部署的机器硬件资源瓶颈问题及应用部署架构存在架构错误问题,如:网络端.客户端.服务端搭建的架构问题: 负载测试:是一个分析软件应用程序和支撑架构.模拟真实环境的使用,从而来确定能够接收的性能过: 压力测试(Stress Testing):是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试: 性能测试的目的: 性能测试的目的主要体现在三个方面:以真实的

性能测试-自学网

一.为什么需要性能测试? 1.基于网络的分布式应用 2.用户数量增加:系统负载挑战 3.能够承受的并发用户数量 4.带宽够用不 5.CPU够用不 6.内存够用不 7.硬盘速度是否跟得上 8.内存型数据库 9.系统稳定不 10.响应时间快不快 二.我们能学到什么 1.性能测试核心技术和原理 2.LoadRunner工具的运用 3.性能测试的实施过程 4.LR并不能完全解决问题 一.性能测试核心技术 1.性能测试核心概念 1.1.性能测试Performance testing 1.2.负载测试 Lo