性能测试概念

一、什么是性能测试?

性能测试用来验证系统是否满足预期的性能指标、寻求系统的性能瓶颈、获得系统的性能扩展能力和性能极限。 系统的稳定性数据从行业性质来讲,性能测试目的是为了验证系统的处理能力并查找出系统的瓶颈,如支持多少用户并发等,验证系统是否满足用户的期望指标,并协助开发、DBA等针对系统瓶颈进行调优,达到上线指标。

二、性能测试分类

1、负载测试(Load testing) 不断增加系统的负载(并发用户数量、用户交互等),直到负载达到阀值。可控的! 评估在预期工作负载下的性能的测试,确定“响应时间、吞吐量、误码率”。

2、压力测试(Stress testing) 当硬件资源如cpu、内存、磁盘空间等不充足时对软件稳定性的检查。故意使大量并发用户/进程加载软件以使系统硬件资源不能应付。这个测试也被称为是疲劳测试(Fatigue testing),通过超出其能力的测试来捕获应用程序的稳定性。

3、尖峰测试(Spike testing) 尖峰测试是在目标系统经受短时间内反复增加工作负载,以至超出预期生产操作的负载量时,分析系统的行为,验证其性能特征。它还包括检查应用程序是否可以从突然增加的超预期负荷中恢复出来的测试。 比如商城0点的一元秒杀

4、可扩展性测试(Scalability Testing) 可扩展性测试(Scalability Testing)是一种非功能的测试,它测试软件应用程序以确定所有非功能能力的扩展能力,如用户负载支持、事务数量、数据量等。

5、持久测试(Endurance testing) 持久测试(Endurance testing),也被称为是浸泡测试(Soak Testing),它也是一种非功能的测试。 持久测试是指在相当长的时间内使用预期的负载量对系统进行测试,以检查系统的各种行为,如内存泄露、系统错误、随机行为等。

6、容量测试(Volume testing) 容量测试是一种非功能的测试,它通过向应用程序中添加大量的数据来实现。可以通过向数据库插入大量的数据或让应用程序处理一个大型文件来进行测试应用程序。 通过容量测试,可以识别应用程序中具有大数据时的瓶颈,检查应用程序的效率,进而得到不同数据量级下应用程序的性能。

 

posted @ 2018-11-28 15:31  ikbk  阅读(464)  评论(0编辑  收藏  举报