最近在搜索和理解一些性能测试概念,通过咨询各类大佬和资料查询(含书本),发现性能测试的方法很多,分类的名词也有很多,查出来大概包含了负载测试、压力测试、容量测试、配置测试、可靠性测试、并发测试、基准测试、失败测试 等云云......
之前不懂,总觉得就"性能测试"嘛 ,面试一问区分以及要做哪些性能测试就懵掉了,在我大量查询和理解后整理出了以下几类,可以详细阅读区分各种测试,仅供参考:
负载测试:
负载测试指在一定软件、硬件及网络环境下,运行一种或者多种业务,在不同虚拟用户数量情况下,测试服务器的性能指标是否在用户的要求范围内,以此确定系统所能承载的最大用户数、最大有效用的用户,以及不同用户数下的系统响应时间及服务器资源利用率。(负载测试强调在一定缓解下系统能达到峰值指标,大多数性能测试都是负载测试,强调系统的处理能力)
压力测试:
压力测试指在一定的软件、硬件及网络环境下模拟大量的虚拟用户向服务器产生负载,使服务器资源处于极限状态下并长时间连续运行,以测试服务器在高负载情况下是否能够稳定工作。(它强调系统的稳定性,此时处理能力不是最重要的)
容量测试:
容量测试是指在一定的软件、硬件及网络环境下,在数据库中构造不同数量级别的数据记录,在一定虚拟用户数量的情况下运行一种或多种业务,获取不同数量级别的服务器性能指标,以确定数据库的最佳容量和最大容量。(对硬件处理能力、各种服务器连接能力、数据库进行。容量测试强调数量,负载测试强调数量和效率)
配置测试:
配置测试是指在不同的软件、硬件及网络环境配置下,运行一种或多种业务,在一定虚拟用户数量情况下,获得不同配置的性能指标,用于选择最佳的设备及参数配置。通过产生不同的配置来得到系统性能的变化状况。
工具:EVEREST Ultimate -内存写入查看内存读写速度
基准测试:
基准测试是指在一定的软件、硬件及网络环境下模拟一定数量的虚拟用户运行一种或多种业务,将测试结果作为基线数据,在系统调优或系统的评测过程中,通过运行相同的业务场景比较测试结果,确定调优结果是否达到预期效果或为系统选择提供决策数据。(基准测试从配置测试得到数据,通过此数据对比每次调优后性能是否有所改善)
并发测试:
并发测试是指通过模拟多个用户并发访问同一个应用、存储过程或数据记录及其他并发操作,来测试是否存在死锁、数据错误等故障。避免函数方法或数据库在并发下的错误,要专门针对每个模块进行并发测试。
例如:存储过程对边界值1000作测试,看用户注册是否有超过1000的情况