今天跟大家分享一下Jmeter性能测试,首先需要了解性能测试的定义是什么,为什么要做性能测试,性能测试指标、性能测试分类是什么呢?接下来就跟大家聊一聊这些问题。
1、性能测试定义
百度&知乎
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
Wiki
In software quality assurance, performance testing is in general, a testing practice performed to determine how a system performs in terms of responsiveness and stability under a particular workload. It can also serve to investigate, measure, validate or verify other quality attributes of the system, such as scalability, reliability and resource usage.
【六级】翻译:
在确保软件质量方面,性能测试一般来说是一种为确定一个系统在一些特殊工作负担(负载)情况下的响应和稳定性而做的测试。它可以用来研究、测量、证明(确认)或者判定系统的一些其他质量属性,比如健壮性、可靠性和资源使用(率)等。
2、为什么要做性能测试【面试】
1、页面响应速度:Compuware公司分析了超过150个网站和150万个浏览页面,发现页面响应时间从2秒增长到10秒,会导致38%的页面浏览放弃率。
2、高并发:系统能承载的负荷
3、CPU使用率,过高会导致系统卡顿
4、特殊情况:电源、网络不稳定的情况
总结就是一句话:为了确保软件(App、网站)在用户使用的过程中运行流畅。
3、性能测试指标和分类【面试】
3.1 指标
1、响应时间:评估系统的能力,主要从测试结果中的负荷和响应时间
2、吞吐量/率:发送消息,根据测试过程中的负荷或代码走差方式找出系统的极端或繁琐的代码逻辑,从而找到体系中的瓶颈或薄弱地方
3、事务处理能力
1)系统调优:重复进行测试,验证系统活动是否达到预期结果、CPU使用率、内存利用率、磁盘I/O、网络带宽
2)验证稳定性和可靠性:既要验证系统的稳定性和可靠性,还要验证人为因素的稳定性
3.2 分类
1)负载测试:是通过逐步增加系统负载,测试系统性能的变化,并在满足最终确定性能指标的情况下,系统所能承受的最大负载量的测试;负载测试是正常范围的