性能测试报告
1 概述
1.1性能测试概念
性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试确定在各种工作负载下系统的性能,目标是当负载逐渐增加时,测试系统的各项性能指标的变化情况。压力测试是通过一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
1.2性能测试目的
性能测试的目的是验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,以优化软件,最后起到优化系统的目的。
1.3性能测试目标
从安全,可靠,稳定的角度出发,找出性能缺陷,并且找出系统最佳承受并发用户数,以及并发用户数下长时间运行的负载情况,如并发100用户,如何对系统进行调优
性能测试主要包括一下几个方面:
(1)评估系统的能力:测试中得到的负荷和响应时长数据可以被用于验证所计划的模型的能力,并帮助做出决策。
(2)识别体系中的弱点:受控的负荷可以被增加到一个极端的水平并突破它,从而修复体系的瓶颈或薄弱的地方。
(3)系统调优:重复运行测试,验证调整系统的活动是否得到了预期的结果,从而改进性能。
(4)检测软件中的问题:长时间的测试执行可导致程序发生由于内存泄漏引起的失败,揭示程序中隐含的问题或冲突。
(5)验证稳定性、可靠性:在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法。
1.4性能测试的常见分类
(1)负载测试:负载测试是指通过测试系统在资源超负荷情况下的表现,来发现设计上的错误或验证系统的负载能力。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作条件下的性能行为,以及持续正常运行的能力。负载测试的目的是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征,如响应时长、事务处理速率和其他与时间相关的性能指标。
(2)压力测试:在软件工程中,压力测试是对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。例如测试一个web站点在大量的负荷下,何时系统的响应会退化或失败。
(3)容量测试:容量测试确定系统可处理同时在线的最大用户数。
2 系统简介
2.1参考资料
性能相关的测试资料
2.2要做的测试
压力测试
基准测试
2.3测试环境
(1)硬件环境
(2)软件环境
3 测试指标
测试时间:2018年10月10日~10月11日
测试范围:客户端请求信息时,服务器各项性能指标的性能测试
3.1 Jmeter指标
(由于Apache旗下性能测试工具jmeter收集的性能指标偏少,下面的数据选取代表性指标)
(1)Averge/ms:服务器处理事务平均响应时间(表示客户端请求到服务器处理信息且反馈客户端的时间)
响应时间=呈现时间+网络传输时间+服务器端响应时间+应用延时时间