性能测试-LoadRunner
一、性能测试
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
(一)目的
目的是验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,优化软件,最后起到优化系统的目的。
包括以下几个方面:
1.评估系统的能力,测试中得到的负荷和响应时间数据可以被用于验证所计划的模型的能力,并帮助作出决策;
2.识别体系中的弱点,受控的负荷可以被增加到一个极端的水平,并突破它,从而修复体系的瓶颈或薄弱的地方;
3.系统调优,重复运行测试,验证调整系统的活动得到了预期的结果,从而改进性能;
4. 检测软件中的问题,长时间的测试执行可导致程序发生由于内存泄露引起的失败,揭示程序中的隐含的问题或冲突;
5.验证稳定性、可靠性,在一个生产负荷下执行测试一定的时间是评估系统稳定性和可靠性是否满足要求的唯一方法;
(二)自动化测试的工具:
- LoadRunner;
- JMeter;
A、JMeter与LoadRunner的相似之处:
- JMeter 跟 LoadRunner 架构基本相同。均通过中间代理,监控,收集并发客户端发现的指令,生成脚本,再发送到应用服务器,再监控服务器反馈结果的一个过程;
- JMeter中也有分布式中间代理功能。这个分布式代理是指可设置多台代理在不同PC中,通过远程进行控制,即通过使用多台机器运行所谓的 Agent 来分担 Load Generator自身压力,并借此来获取更大的并发用户数;
B、JMeter相对于LoadRunner的优势: