性能测试流程

性能测试常规流程

  1. 学习业务:查看文档、实际操作、询问相关开发人员
  2. 分析需求:分析非功能需求,确定性能测试范围,了解系统性能指标
  3. 工作评估:分解工作,评估完成性能测试所需要的时间和人力
  4. 设计模型:设计性能测试用例和实现方案
  5. 编写计划:测试范围、人力、持续时间、工作内容、风险评估、风险应对策略
  6. 评审
  7. 准备测试环境:脚本开发、测试数据
  8. 测试执行
  9. 缺陷管理
  10. 性能分析
  11. 性能调优
  12. 测试报告:测试计划、测试脚本、测试程序、测试报告或者阶段性测试报告
  13. 评审

性能测试难点

  1. 评估系统,需求分析
    1. 第一次上线的系统,与同行系统数据比较,得出负荷和响应时间
    2. 已上线的系统,直接获取TPS,用户数、数据库ER图等
  2. 场景设计、用例设计
    1. 业务分布
    2. 业务量
    3. 业务时段
    4. 业务角色
    5. 执行时间
    6. 执行比例
  3. 测试执行、是否通过
    1. 做好监控
      1. 响应时间
      2. 吞吐量
      3. 事物成功率
      4. 硬件指标
        1. CPU
        2. 内存
        3. 存储
        4. 网络
      5. 稳定性
      6. 内存有无泄露
      7. 其他
        1. 数据库
        2. 中间件
        3. 缓存
        4. JVM
    2. 验证系统稳定性
  4. 性能优化诊断

如何看性能问题

  1. 黑盒测试角度: 从用户发送请求,经过服务器处理,存储到DB,返回结果到客户端响应的时间总和
  2. 开发角度:
    1. 架构合理性
    2. 数据库设计合理性
    3. 代码
    4. 系统里的内存使用方式
    5. 系统里线程使用方式
    6. 系统资源是否有恶性竞争
  3. 系统管理员
    1. 硬件资源利用率
    2. JVM
    3. DB
    4. 换哪些硬件能够提高系统性能
    5. 系统能够支持7*24的服务
    6. 扩展性、兼容性、最大容量、可能瓶颈
  4. 性能测试的角度
    1. 服务器硬件性能
    2. 根据需求和历史数据指定性能目标
    3. 建立性能通过模型
    4. 对开发代码框架和硬件框架进行性能分析
    5. 针对开发发布版本的基准测试
    6. 执行软件性能验收及稳定性测试
    7. 生产环境的配置和优化 
    8. 制定性能测试的测试用例
    9. 制定性能测试的场景设计
    10. 协调各部门配合
    11. 特定的性能分析

常见的性能测试工具:

  1. HP LoadRunner
  2. Apache JMeter
  3. Grinder
  4. CompuWare QALoad
  5. Microsoft WAS
  6. RadView WebLoad
  7. IBM RPT
  8. OPENSTA
商业工具与开源工具
开源       商业
能够开发最适合的测试工具        依赖于工具本身特性,难扩展
易于学习和使用        依赖于工具本身和文档
工具稳定性、可靠性不足        有一定的可靠保证
可以形成特有的测试工具体系    难与其他产品集成

性能测试相关术语:

  1. 负载:给服务器施加压力的过程
  2. 负载测试:不断加压,找出不同压力下的性能情况
  3. 压力测试:检验在极限情况下,系统是否能够正常运行
  4. 稳定性测试:长时间不间断地运行,看性能指标是否符合要求
  5. TPS: 每秒完成的事务数
  6. RT/ART: 响应时间/平均响应时间
  7. PV: 每秒用户访问页面的次数
  8. 思考时间: 用户在实际操作中停顿的时间

性能测试通过标准

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值