性能测试、负载测试、压力测试等网搜及总结

上一篇 / 下一篇  2007-10-23 21:30:19 / 个人分类:性能测试

首先有个题目:什么是压力测试(Stress testing)?感觉跟考试性质一样,所以一定要写出个标准答案来才觉得舒服。于是上网搜了一下,收获就是:

1)、压力测试是测试系统在非正常的、超负荷的条件下的运行情况 ,用来评估在超越最大负载的情况下系统将如何运行,考验系统在正常的情况下对某种负载强度的承受能力。压力测试就是一种破坏性的测试。
2
)、压力测试是在一种需要反常数量、频率或资源的方式下运行系统,用以判断系统的稳定性和可靠性。
3
)、压力测试是测试系统在一定饱和状态下,如CPU、内存等资源在饱和使用情况下,系统能够处理会话的能力(如系统的响应时间是否变了?),以判断系统是否会出错。一般会把压力描述为“CPU使用率达到75%以上,内存使用率达到70%以上

 

压力测试是大范围的性能测试(Performance testing)的概念里的一种方法,其它的性能测试方法还包括:负载测试(Load testing);配置测试(Configuration testing);并发测试(Concurrency testing);可靠性测试(Reliability testing);失效恢复性测试(Failover testing)等。

 

从更大的范围来说,性能测试是系统测试(System testing)的一个方法。系统测试是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等满足其规约所指定的要求(且是依据系统测试设计书来进行的)。主要包括:系统的功能测试、性能测试、操作测试、负荷测试、排他测试、异常处理测试和模拟运行测试等。

 

再回到原先的话题。

性能测试(Performance Test):通常收集所有和测试有关的所有性能,通常被不同人在不同场合下进行使用。
关注点:how much和how fast

负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担。
关注点:how much

强度测试(Stress Test): 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方。包括
Spike testing:短时间的极端负载测试
Extreme testing:在过量用户下的负载测试
Hammer testing:连续执行所有能做的操作

容量测试(Volume Test):确定系统可处理同时在线的最大用户数
关注点:how much(而不是how fast)
容量测试,通常和数据库有关,容量和负载的区别在于:容量关注的是大容量,而不需要表现实际的使用。

其中,容量测试、负载测试、强度测试的英文解释为:
Volume Testing = Large amounts of data
Load Testing = Large amount of users
Stress Testing = Too many users, too much data, too little time and too little room

最后有一个跑步的例子用来比喻,我感觉比较形象而且容易理解

 

性能测试,表示在一个给定的基准下,能执行的最好情况。例如,在没有负重的情况下,你跑100米需要花多少时间(这边,没有负重是基准)?
负载测试,也是性能测试,但是他是在不同的负载下的。对于刚才那个例子,如果扩展为:在50公斤、100公斤……等情况下,你跑100米需要花多少时间?
强度测试,是在强度情况下的性能测试。对于刚才那个例子,如果改为:在一阵强风的情况下,你在负重或没有负重的情况下,跑100米需要花多少时间?


TAG: 性能测试 压力测试

 

评分:0

我来说两句

日历

« 2024-05-01  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 138383
  • 日志数: 11
  • 建立时间: 2007-06-14
  • 更新时间: 2007-12-18

RSS订阅

Open Toolbar