性能测试培训思路

定义:


是指在某个特定的硬件、软件、网络环境下通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

含:执行效率,资源占用,稳定性,安全性(压力测试是安全测试的一种),兼容性(class文件能不能放到兼容性平台上,如程序和浏览器内核能不能弄到一起去)

 

loadrunner 工作原理 --来源于性能测试面试问题

性能测试实施步骤

loadrunner的脚本工作

性能测试的目的

 

  • 验证改进的性能效果,需要和以前的测试结果进行比对;
  • 新的业务上线,验证新系统能够满足系统的上线指标;
  • 验证系统稳定性;
  • 验证系统的架构是否存在瓶颈;

性能测试环境的搭建

 

  • 硬件环境:参考实际的生产环境搭建,并且要考虑自身的硬件成本
  • 软件环境:尽量和生产环境使用的版本和配置保持一致,并且尽可能保持最优配置
  • 网络环境:尽可能参考生产环境的网络结构和搭建,尽可能不要跨多个网段
  • 数据库中基础数据的准备
    • 基础数据的内容和数据量
      • 需要参考具体系统的业务内容和使用规模
      • 类似系统的数据量规模
      • 尽可能多增加一定比例的冗余数据
    • 测试数据准备方法
      • 数据库存储过程
      • LR、selenium等自动化测试工具
  • 最优的性能测试环境就是即将正式上线的正式环境

性能测试工具选择

 

  • loadrunner
  • webload
  • jmeter
  • 自写的多线程压测程序

选择的标准:能完成特定要求的性能测试要求即可,优先考虑使用强大的图表和控制功能的lr

性能测试范围的定义

 

  • 和整个开发团队一起确认性能测试的范围
  • 系统中被频繁使用的功能、调用的接口等
  • 系统中涉及到大量数据库读、写的功能
  • 大量读写系统缓存部分的功能

 

性能测试需求获取

 

 

性能测试的完成目标

  • 新上线的测试系统没有明确的数字标准对比情况下,被测系统已经被测试到了系统极限(系统的某些资源已经被耗尽,CPU,句柄,内存,数据库出现大量的slow query,系统有些处理已经变慢),并且系统证明是可以水平扩展的,则可以上线。
  • 有以往的测试结果进行比对,只要证明类似的的测试条件下,此次的测试结果比以往的测试结果更好即可(TPS更多,单次请求的处理速度更快)
  • 没有可以比较的测试结果,但是产品已经上线一段时间(至少三个月),有一些运营数据,则需要分析运营的数据来作为比对的基准,只要被测系统达到三个月内系统并发峰值的4倍就可以认为是可以接受的。(如果是接口为测试对象,则需要混合主要的接口来进行性能测试)----不建议
  • 开发人员提供经验作为比对基准,则被测对象只要证明满足开发人员提出的经验值即可。
  • 如果选择以上的某一种策略,则必须明确系统的每秒处理个数和每次请求的具体时间的具体数值,并出具最终的性能测试报告。

性能测试的脚本调试


  脚本录制、编写、修改、随机化策略、调试和运行,查看log和数据库内容验证脚本正确性

 

性能测试的数据收集

 

性能测试数据分析

 

 经验介绍

 

posted @ 2016-04-25 20:39  张老师的小黑屋  阅读(369)  评论(0编辑  收藏  举报