负载与压力测试

时间:2012-03-17 13:54:36

标签: testing load-testing stress-testing

负载和压力测试之间有什么区别?

8 个答案:

答案 0 :(得分:106)

Wikipedia 负载测试(粗体是我的):

  

[...]通常会进行负载测试,以了解系统在特定预期负载下的行为。此负载可以是应用程序在设置的持续时间内执行特定数量的事务的预期的并发用户数。此测试将给出所有重要业务关键事务的响应时间。[...]

stress testing

  

了解系统内容量的上限。进行此类测试是为了确定系统在极端负载方面的稳健性,并帮助应用程序管理员确定当前负载远高于预期最大值时系统是否能够充分运行

所以最重要的是:如果您正在测试正常的预期负载(您知道系统最多会被100个用户使用),那么这就是负载测试。但是当你想确定系统在极端负载(DoS,Slashdot effect)下的行为以及它何时中断时,这就是压力测试

答案 1 :(得分:17)

术语“压力测试”和“负载测试”通常由软件测试工程师互换使用,但它们确实非常不同。

压力测试

在压力测试中,我们试图通过压倒其资源或从中获取资源来破坏被测系统(在这种情况下,它有时被称为负面测试)。这种疯狂背后的主要目的是确保系统出现故障并恢复正常 - 这种质量被称为可恢复性。 要么 压力测试是使您的受测试程序/系统(SUT)受到减少的资源,然后通过运行标准功能测试来检查SUT的行为的过程。这样做的想法是暴露在正常情况下不会出现的问题。例如,多线程程序在正常情况下可能正常工作,但在CPU可用性降低的情况下,时序问题会有所不同,并且SUT会崩溃。压力测试中减少的最常见系统资源类型是CPU,内部存储器和外部磁盘空间。在进行压力测试时,通常会调用分别减少EatCPU,EatMem和EatDisk这三种资源的工具。

另一方面,负载测试

如果负载测试负载测试是让您的SUT承受重负载的过程,通常是通过模拟多个用户(使用Load runner),其中“用户”可以指人类用户或虚拟/程序化用户。最常见的负载测试示例涉及使基于Web或基于网络的应用程序受到数千名用户的同时点击。这通常由模拟用户的程序完成。负载测试有两个主要目的:确定SUT的性能特征,并确定SUT是否正常“断开”。

对于网站,您将使用负载测试来确定您的系统可以处理多少用户并且仍然具有足够的性能,并确定极端负载会发生什么 - 网站是否会产生“太忙” “用户的消息,或者Web服务器会在火焰中崩溃?

答案 2 :(得分:9)

负载测试: 负载测试旨在通过​​持续稳定地增加系统负载直至达到阈值限制来测试系统。

示例 例如,要检查应用程序的电子邮件功能,可能会一次充斥1000个用户。现在,1000个用户可以通过多种方式触发电子邮件事务(读取,发送,删除,转发,回复)。如果我们每小时每个用户进行一次交易,则每小时将进行1000次交易。通过模拟10个事务/用户,我们可以通过占用10000个事务/小时来加载测试电子邮件服务器。

压力测试: 在压力测试下,为了破坏系统,进行了各种超额工作使现有资源超负荷的活动。

示例: 例如,像OpenOffice.org的Writer1.1.0这样的文字处理器被用于开发字母,演示文稿,电子表格等...我们的压力测试的目的是用超出的字符加载它。

为此,我们将重复粘贴一行数据,直到达到处理大量文本的阈值限制。一旦字符大小达到65,535个字符,它就会拒绝接受更多数据。在Writer 1.1.0上进行压力测试的结果产生的结果是,它不会在压力下崩溃并且能够优雅地处理这种情况,从而确保应用程序即使在严苛的压力条件下也能正常工作。

答案 3 :(得分:3)

- >使用最大用户数和输入数测试应用程序定义为负载测试。使用超过最大数量的用户和输入测试应用程序时,定义为压力测试

- >在负载测试中,我们根据用户量来衡量系统性能。在压力测试中,我们测量系统的断点。

- >负载测试正在针对给定的负载要求测试应用程序,其中可能包括以下任何条件:

 .Total number of users.

 .Response Time

 .Through Put

检查服务器/应用程序状态的一些参数。

- >压力测试正在测试应用程序的意外负载。它包括

 .Vusers

 .Think-Time

示例:

如果一个应用程序是为500个用户构建的,那么对于负载测试,我们最多可以检查500个用户,对于压力测试,我们会检查超过500个。

答案 4 :(得分:2)

负载测试=在服务器上放置指定数量的负载一段时间。 100个同时用户10分钟。确保软件的稳定性。 压力测试=稳定地增加负载量,直到软件崩溃。 10个并发用户每2分钟增加一次,直到服务器崩溃。

与举重进行比较:你“最大”你的体重,看看你能为1次训练(压力测试)做些什么,然后在常规锻炼中你做了3次10次重复的最大值的85%(负载测试)

答案 5 :(得分:0)

负载测试: - 负载测试旨在通过​​持续稳定地增加系统负载直至达到阈值限制来测试系统。

压力测试: - 在压力测试下,为了破坏系统,会执行各种以超出作业重载现有资源的活动。

基本区别在于

click here to see the exact difference

答案 6 :(得分:0)

负载测试:大量用户 压力测试:用户太多,数据太多,时间太少,空间太小

答案 7 :(得分:-1)

负载 - 在最大负载下测试S / W. 应力 - 超出S / W的负荷或者确定s / w的断点。