1、什么是性能测试?
(1)性能测试是通过自动化的测试工具模拟多种正常、峰值、以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。
(2)通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项指标的变化情况。
(3)压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
2、负载测试概念(Load Testing)
(1)负载测试是指在一定的软件、硬件以及网络环境下,进行一种或多种业务,在不同虚拟用户数量的情况下,测试服务器的指标是否在用户要求的范围内,以确定系统能够承载的最大用户数、最大有效用户数、不同的用户数下的系统响应时间、以及服务器的资源利用率
(2)主要关注:最大用户数,最大有效用户(峰值指标)
3、压力测试概念(Stress Testing)
(1)压力测试是指在移动的软件、硬件以及网络环境下,模拟大量虚拟用户向服务器产生负载时,服务器的资源处于基线状态下并长时间运行,以测试服务器在高负载下是否能够稳定的工作,与负载测试获得峰值性能数据不同,压力测试强调极端情况下系统的稳定性,这时候处理能力就不那么重要了。
(2)主要关注:长时间运行(稳定性)
4、为什么要进行性能测试?
(1)评估系统的能力
(2)识别体系中的弱点
(3)系统调优
(4)提高系统的吞吐量
(5)缩短响应时间
(6)更好的支持并发
(7)验证系统的稳定性、可靠性
5、性能测试的流程
(1)确定性能需求
(2)构建业务模型
(3)制定测试方案
(4)设计测试案例
(5)搭建测试环境
(6)开发测试脚本
(7)构建测试数据
(8)执行测试场景
(9)测试结果分析
(10)性能优化测试
(11)性能测试总结
6、如何做好性能测试
(1)熟悉操作系统:
Windows、Liunx、Aix、Hup-Ux、Solaris
(2)网络:
四层体系机构、七层网络协议
(3)中间件:
Weblogic、WebSphere、IIS
(4)数据库:
Oracle Mysql、Sql Server、Db2、Sybase