性能测试简介

  软件系统的性能包括很多方面,有执行效率,资源占用,系统稳定性,安全性,兼容性,可靠性,可扩展性等。这些都是可以衡量一个软件系统性能好坏的指标。而性能测试是指通过自动化测试工具去模拟多种正常,峰值及异常负载条件来对系统的各项性能指标进行测试。与功能测试相比,性能测试有更高的技术复杂性。

性能测试方法和目的

  通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。验证系统所具有的能力。

性能测试分类

  1.负载测试(Load test)

    通过在被测试系统上不断施加压力,直到系统性能指标达到极限。找到系统处理能力的极限。

  2.压力测试

    测试系统在一定饱和状态下,系统能够快速处理的会话能力,以及系统是否会出现错误。检查系统处于压力下系统应用的表现。

  3.并发测试

    通过模拟多用户并发访问,测试多用户并发访问同一个系统应用模块或者数据记录时是否存在死锁或者其他性能问题。可以发现系统中可能隐藏的的并发访问时会出现的问题,比如订单号重复,数据错误等等。

  4.配置测试

    通过对被测试系统的软硬件环境的调整,了解各种不同对系统的性能影响的程度,从而找到系统各项资源的最优配置。可以了解各种不同因素对系统性能影响的程度。

  5.可靠性测试(稳定性测试)

    给系统加载一定业务压力的情况下,是系统运行一段时间,以此来检测系统运行是否稳定。可以验证系统是否支持长期稳定的运行。

  上面各种测试分类也是密切相关的,各种测试方法之间也有一定的包含。

性能指标

  1.平均响应时间(TTLB,Time to laster byte):平均每个请求从发送到接受响应的时间。

  

  2.合理的平均响应时间

    2/5/10原则

   解释:

    在2秒内客户能得倒响应被用户认为是“非常有吸引力的”用户体验。在5秒只内响应客户被认为是“不错的”用户体验,在10秒之内响应给客户被认为是“糟糕”的用户体验。

    如果超过10秒还没得倒响应那么被认为请求是失败的。

  系统资源类的性能指标

    1.CPU

      CPU的占用率

    2.内存

      内存的占用率,交换换页数等。

    3.I/O

      读写请求数,读写量等。跟数据库相关。

    4.带宽

      进出站等带宽占用率。用户的访问量会增加带宽的使用,带宽合理的使用率会降低企业的成本。

为什么要进行性能测试

   1.能够有效评估系统的性能指标,用于系统的性能评估。

    2.能够识别系统的性能瓶颈,协助性能调优。

    3.能够指导突发流量承载方案的制定,指导资源的规划。

    4.能够用于系统运维成本的预算,根据参照进行资源的配置。

常见性能测试工具

  ab , wrk ,http_load , Web Bench ,Siege,Apache JMeter,Loadrunner

【测试】性能测试及性能测试工具Loadrunner的更多相关文章

  1. 性能测试工具---loadrunner

    1.什么是参数化参数化:把固定的一个值,变成动态.可变的数组,把数组的值进行值传递.数组大小可控制.2.为什么要使用参数化,2个原因.1.数据库校验字段值的唯一性.(数据库修改字段的唯一性,可避免参数 ...

  2. 性能测试开源小工具——http_load介绍

    淘测试 性能测试开源小工具——http_load介绍 meizhu 发表于:2009-07-02 浏览:3552次 评论:1次 所属分类: 性能测试 性能测试开源小工具——http_load介绍 ht ...

  3. [原创] 上海招聘高级测试工程师(性能测试/自动化测试/App测试),长期有效

    [原创] 上海招聘高级测试工程师(性能测试/自动化测试/App测试方向),长期有效 高级测试工程师(性能/自动化方向) 1.负责性能测试计划,性能需求分析,性能测试方案和用例设计,搭建性能测试环境,执 ...

  4. Android 性能测试——Heap Viewer 工具

    Android 性能测试--Heap Viewer 工具 Heap Viewer能做什么? 实时查看App分配的内存大小和空闲内存大小 发现Memory Leaks Heap Viewer使用条件 5 ...

  5. Android 性能测试——Memory Monitor 工具

    Android 性能测试--Memory Monitor 工具 Memory Monitor能做什么? 实时查看App的内存分配情况 快速判断App是否由于GC操作造成卡顿 快速判断App的Crash ...

  6. 性能测试学习之路 (一)认识jmeter(性能测试流程 && 性能测试通过标准 &&jmeter体系结构)

    性能测试是通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试. 1 性能测试技能树 性能测试是一项综合性的工作,致力于暴露性能问题,评估系统性能趋势.性能测试工作实质 ...

  7. Android APP压力测试(一)之Monkey工具介绍

    Android APP压力测试(一) 之Monkey工具介绍 前言 本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动. ...

  8. 关于《精通移动App测试实战:技术、工具和案例》图书勘误信息

    首先,对由于我们工作的疏忽向<精通移动App测试实战:技术.工具和案例>读者朋友们表示歉意,同时已将这些问题反馈给了出版社编辑同志,再版时将会统一修正: 其次,勘误信息请参看附件pdf文档 ...

  9. Android自动化压力测试图解教程——Monkey工具

    [置顶] Android自动化压力测试图解教程--Monkey工具 标签: 测试androidprofiling工具测试工具文档 2012-04-01 10:16 38185人阅读 评论(10) 收藏 ...

  10. 收集各种在线HTTP网站载入速度(响应时间)站长测试(检测)工具

    收集各种在线HTTP网站载入速度(响应时间)站长测试(检测)工具 名称\详情 简单功能描述 推荐星级 演示/示例 监控宝 从中国多地对你提交的URL进行载入速度(响应时间)测试 ★★★★★   17C ...

随机推荐

  1. 「Luogu P2824 [HEOI2016/TJOI2016]排序」

    一道十分神奇的线段树题,做法十分的有趣. 前置芝士 线段树:一个十分基础的数据结构,在这道题中起了至关重要的作用. 一种基于01串的神奇的二分思想:在模拟赛中出现了这道题,可以先去做一下,这样可能有助 ...

  2. Golang mysql数据库

    基本操作: Open() – create a DB Close() - close the DB Query() - 查询 QueryRow() -查询行 Exec() -执行操作,update,i ...

  3. Codeforces1301B. Motarack's Birthday

    题意是说给你一串数组,其中-1代表未知,求相邻两个数之差的绝对值最小,-1可以由k赋值,先考虑-1的情况,把k解出来,转换一下,就是绝对值之差最小情况,|k-a|,|k-b|,|k-c|,要使最大的最 ...

  4. python的沙盒环境--virtualenv

      VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前者提供了一些便利的命令行上的封装. 使用 VirtualEnv 的理由: 隔离项目之间 ...

  5. .NET List<T>Conat vs AddRange

    最大的不同在于AddRange改变了它所调用的列表,而Concat创建了一个新的List.因此它们有不同的用途. Concat也是一种适用于任何IEnumerable的扩展方法,并返回一个IEnume ...

  6. Scrapy 中的 Request 对象和 Respionse 对象

    1.Request 对象 Request 对象用来描述一个 HTTP 请求,下面是其构造方法的参数列表 Request(url, [, callback, method='Get', headers, ...

  7. SessionAttributes注解

    SessionAttributes注解: a.该注解只能应用在类上: b.该注解用于将Map.ModelMap.Model或ModelAndView中的数据暂存到HttpSession中以使其可以在多 ...

  8. 一 SSH整合:Spring整合Struts2的两种方式,struts.xml管理Action&Bean管理Action

    SSH回顾 1 引入jar包 Struts2的jar包 D:\Struts2\struts-2.3.35\apps\struts2-blank\WEB-INF\lib  开发基本包 Struts2有一 ...

  9. swoole之内存

    一.代码 <?php // 可以用来数据共享 // 执行完后 自动释放 // 创建内存表 $table = new swoole_table(1024); // 内存表增加一列 $table-& ...

  10. Calendar 时间类的应用

    Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法却遭到众多批评,不建议使用,更推荐使用 Calendar 类进行时间和日期的处 ...