负载测试方案(一)

 

  1. 目的

负载测试,是性能测试中的一种,通过测试系统、数据在资源超负荷环境(梯度渐进的过程)中运行时,持续正常运行的能力,程序能否承担,分析其性能行为,以发现性能瓶颈、内存泄漏、数据不能实时同步等设计上的错误或验证系统的负载能力。

注:负载测试属于性能测试的子集,负载测试是测试软件本身最大所能承受的性能测试,如一个人背X斤:

负载测试:50斤、100斤、200斤情况下,是否能坚持5分钟。

压力测试:200,300,400...斤情况下的表现,什么时候失败,失败之后什么表现,重新扛200是否正常。

容量测试:在坚持5分钟的情况下,他一次最多能扛多少斤。

梯度渐进的过程:通过逐步增加系统负载,确定在满足性能指标的情况下,系统所能承受的最大负载量。

  1. 实现

怎么在保证在合理时间(有限的时间)内完成合理的测试。

    1. 了解被测对象的需求及实现技术

测什么、怎么测是要切合实际需求、项目具体实现来分析的

    1. 确定基量数

跟据需求,将性能测试指标进行抽象化,基础数据容量、业务数据容量、最佳并发数等。

    1. 确定测试场景

以“并发,循环操作,多用户”为主,结合实际需求,进行场景组合分析,确定测试场景,有目的的进行测试。

    1. 测试资源筹备

可测试性分析、测试资源(硬件资源、软件资源、人力资源、时间资源)筹备。

    1. 测试执行

借助自开发脚本(Python、Java、sql、nosql)、工具辅助(jmeter、SoapUI、loadrunner、postman等)。

    1. 持续集成测试

Jenkins持续集成测试,持续跟踪测试,很多性能问题不是1次,2次,1天、2天就能立马暴露出来的。

    1. 结果分析

性能须要透过表象看本质,结合系统架构、软硬件配置、网络宽带等进行分析。

A、指标分析:吞吐量、tps每秒处理事务数,每秒请求事务数量、响应时间、错误率等。

B、服务器监控:cpu、内存、磁盘IO、负载Load。

C、日志分析:日志打印、耗时情况、错误率、模块或函数被调用的情况。

    1. 风险分析、识别

敏捷测试理念引入:测试动作要提前,全过程参与,传统的软件测试相比,全过程测试管理方式不仅可以有效降低产品的质量风险,而且还可以提前对软件产品缺陷进行规避、缩短对缺陷的反馈周期和整个项目的测试周期,建立“以预防为主”的质量意识,缺发现得越晚,修复成本越大,风险也越高(如修改引入新问题)。

 

负载测试方案(一)_第1张图片

 

 


  1. XXX项目知识图谱测试方案
  1. 测试关键活动

(该活动的实施不全都是面向测试人员)

软件测试活动包括设计评审,代码走读,数据测试(数据分层测试、数据库测试),性能测试,用户接口测试、系统测试等。

设计评审,代码正规检视,数据测试:解决各节点(数据提取、转换、载入)数据转换规则、计算规则、数据修复错误,绝大部分逻辑错误等问题。

性能测试:穿插各个阶段进行

用户接口测试、系统测试:测试阶段完成,要发现隐藏深入的逻辑问题及模块间配合问题。

数据分层测试:提早实施测试、便于问题范围定位、分析

 

以测试小组的方式开展工作。通过加强不同业务模块测试与测试之间,相同业务模块测试与开发和产品经理之间的沟通交流,来提高人员的测试水平,提升测试质量。

 

测试过程中需要不断总结,形成可共享的测试方法和经验。

 

你可能感兴趣的:(软件测试)