性能测试培训(一)
——基础知识
1. 软件性能测试的概念
1.1 软件性能与性能测试
软件性能:覆盖面广泛,对一个系统而言,包括执行效率、资源占用、稳定性、安全性、兼容性、可扩展性、可靠性等。
性能测试:为保证系统运行后的性能能够满足用户需求,而开展的一系列的测试组织工作。
1.2 不同角色对软件性能的认识
用户眼中的软件性能:
? 软件对用户操作的响应时间
如用户提交一个查询操作或打开一个web页面的链接等。 ? 业务可用度,或者系统的服务水平如何 管理员眼中的软件性能:
管理员关心的问题 服务器的资源使用状况 系统支持多少用户访问,处理量 系统性能的可能瓶颈 更换哪些设备可提供系统性能 系统能否支持7*24小时的业务访问 1 / 26
软件性能描述 资源利用率 系统的容量 系统可扩展性 系统可扩展性 系统稳定性
开发人员眼中的软件性能:
开发人员关心的问题 架构设计是否合理 数据库设计是否合理 代码是否需要优化 软件性能描述 系统架构 数据库设计 代码 1.3 性能测试的对象
服务器端:
? 负载均衡系统;
? 服务器(单机、双机热备、集群); ? 存储系统、灾备中心; ? 数据库、中间件。 网络端:
? 核心交换设备、路由设备;
? 广域网络、专线网络、局域网络、拨号网络等; 应用系统:
由此可见,性能测试是一个系统性的工作,被测对象包括系统运行时使用的所有软硬件。但在实际操作时,将根据项目的特点,选择特定的被测对象。
1.4 性能测试的目标
评价系统当前的性能:
2 / 26
? 系统刚上线使用,即处于试运行时,用户需要确定当前系统是否满足验收要求;
? 系统已经运行一段时间,如何保证一直具有良好的性能。 分析系统瓶颈、优化系统:
? 用户提出业务操作响应时间长,如何定位问题,调整性能; ? 系统运行一段时间后,速度变慢,如何寻找瓶颈,进而优化性能。
预见系统未来性能、容量可扩充性:
? 系统用户数增加或业务量增加时,当前系统是否能够满足需求,如果不能,需要进行哪些调整?提高硬件配置?增加应用服务器?提高数据库服务器的配置?或者是需要对代码进行调整?
1.5 性能测试的分类
按照测试压力级别: ? 负载测试; ? 压力测试; 按照测试实施目标: ? 应用在客户端的测试; ? 应用在网络的测试; ? 应用在服务器端的测试; 按照测试实施策略:
3 / 26
性能测试培训——基础知识



