51Testing软件测试论坛 's Archiver

默默巫 发表于 2010-1-26 09:49

做充分的压力测试,在软件上线后是否就不存在性能问题?(2010-1-26)获奖名单已公布

[size=3][i]背景描述:[/i][color=red][font=宋体]压力测试是对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。例如测试一个 Web 站点在大量的负荷下,何时系统的响应会退化或失败。
那么做了充分的压力测试,在软件上线后是否就不存在性能问题了呢?
[/font][/color]

[/size][size=2]如果你也有矛盾的问题想提出来和大家一起讨论,[/size][url=http://bbs.51testing.com/thread-131215-1-1.html][size=2][color=red]请点击此处>>[/color][/size][/url]
[size=3][size=2]说不定下期PK的话题就是由你提出的哦,请快快参与吧[/size][/size]   


[size=3][i][table=50%][tr][td][b]奖项[/b][/td][td][b]获奖名单[/b][/td][td][b]奖励[/b][/td][td][b]答案连接[/b][/td][/tr][tr][td]最佳话题PK手[/td][td][color=#000000]云层[/color][/td][td][align=center]50手机话费充值卡+最佳PK手勋章[/align][/td][td][color=#0000ff][color=#0000ff][url=http://bbs.51testing.com/viewthread.php?tid=181373&page=2#pid1427150][align=center][color=#0000ff]34#[/color][/url][/color][/align][/color][/td][/tr][/table][/i][/size]

angle-ying 发表于 2010-1-27 10:22

压力测试并不能代表整个性能测试
性能测试毕竟还包括稳定性测试,压力测试,效率测试,安全测试等等其他类型的测试,单单的一个压力测试即时在充分也不能保证上线后不出现性能问题,即时该软件能承受很大的压力但是不能保证他在该压力下的稳定等等其他性能方面的状况,并且在充分的测试也有疏忽的地方,所以这个观点是不正确的。

[[i] 本帖最后由 angle-ying 于 2010-2-22 16:21 编辑 [/i]]

liuchunyanli 发表于 2010-1-27 16:25

只能说降低,达不到绝对的程度。
非要说绝对,需要规定特定的场景。

唐唐心语 发表于 2010-1-27 16:38

压力测试只是性能测试的一部分,所以即使压力测试再完美,也不能保证性能不出问题,毕竟性能测试还包括强度测试,负载测试。。。

Jackc 发表于 2010-1-27 17:27

建议修改这个题目,完全没有辩论的意义了

测试怎么能发现所有的error? 从入门就明白的道理……

命题过于一边倒了,没什么意思

祈祷王城 发表于 2010-1-28 10:13

支持angle-ying的观点

我绝觉得也是这样的

祈祷王城 发表于 2010-1-28 10:57

压力测试是考察软件最的吞吐量  测试峰值  性能测试是测试稳定是 性能测试范围要广 包括安全性啊 实用性啊等等...就好比物理学中的 一个测质量 一个迅速度似的 性能是质量  压力是速度

qiguojie 发表于 2010-1-28 11:11

即使达到所谓“充分”的压力测试,也不可能没有问题。

1、大家都要明白,虚拟的场景和真实的场景是存在差异的,也就是说测试场景设计的再如何逼近真实场景,还是存在误差(系统部署架构和测试环境部署架构的差异、正式部署服务器和测试服务器的差异、网络环境差异、虚拟用户场景和真实用户场景的差异、各种突发情况等);所以,光测试充分,考虑到位,也只能减少误差;我们能做的只能是尽力保证没有问题。
2、另外,如上述朋友所说,压力测试只是性能测试的一种,只能验证目前系统中的性能临界点而已,不能保证正常负载一段时间后,系统的性能属性仍然没有问题。
3、瓶颈无法逾越。系统所能承受的压力始终是有瓶颈的,超过瓶颈难道不是性能问题吗?你设计3000人在线并发系统没问题,实际上用户使用的时候爆发了,轻松上5000人后你服务挂了,那么这也是性能问题哈。
……
影响性能的因素很多很多,这个论题即使到了地球毁灭2012了,我也是死忠的反方。

jimmyseraph 发表于 2010-1-28 11:34

这个问题太无趣了,什么叫“充分”?根本说不清嘛。

愚人 发表于 2010-1-28 11:52

任何都是相对的,没有问题也是不可能的,无论是前期的作为未雨绸缪的设计架构还是作为亡羊补牢的测试,都不可能消灭所有问题。能做到的就是尽量减少问题。

killkisu 发表于 2010-1-28 12:45

我觉得吧,这个命题有些偏颇

例如楼上所说:“压力可以代表整个性能吗?”,又例如楼上所说:“虚拟的场景和真实的场景是存在差异的”。很明显的命题对反方有利,因此,命题偏颇。我支持反方论点,但是我觉得更多的是这个命题应该谨慎和平衡。我没做过性能测试,没做过压力测试,我只了解过一点这个领域的知识,所以没有什么发言权。

gyjtest 发表于 2010-1-28 17:57

怎么可能,或许是存在的问题不能被发现呢?

我们是做测试的,所以我们知道每个软件就算上线后,肯定还存在没有被发现的问题,所以不能说“不存在问题”。

菜也快乐着 发表于 2010-1-28 19:10

这个主要取决于你对充分的定义吧

所以此题无解。。。

denisliu 发表于 2010-1-29 11:07

太过理论化

没有100%的充分,这个世界根本就不存在这样的前提假设

lisuy 发表于 2010-1-29 14:14

现实中充分是没有上限的,只有理论上这么说

test_fairy 发表于 2010-1-29 14:39

性能测试是一个比较复杂而系统的测试,不仅仅只是压力测试

性能测试是一个比较复杂而系统的测试,不仅仅只是压力测试,所以说即使是再充分的压力测试也不能囊括性能测试的全部,而系统上线以后想保证不出性能问题就是根本不可能的。

superfang 发表于 2010-1-29 15:30

性能测试

性能测试包括都很多的方面
1. 服务器的性能
2. 数据库的性能
3.中间件的性能
4.网络环境配置
5.整体的性能
   所以 性能一个整体的综合的性能. 每一个部分都有可能会出现问题,所以上线后, 建议做一次全面的性能测试.以防万一.

msnshow 发表于 2010-1-31 09:42

做充分的性能测试,在软件上线后是否就不存在性能问题?

命题建议改一下,改为“做充分的性能测试,在软件上线后是否就不存在性能问题?”

mitutu 发表于 2010-1-31 18:06

不能这么绝对的吧?

线下的性能测试能模拟线上的用户行为,这样能发现一些性能问题,但线下做了性能测试没问题不能保证上线了就一定不会有问题,主要有两个影响因素:
1.线下,线上硬件,软件环境可能不完全一致
2.模拟的用户场景有一定的代表性,但局限性也很明显。

star114 发表于 2010-2-1 16:13

::xizao::: 谁出的这个题啊,明显者就是有问题的题嘛,那个软件做过充分的压力测试,就能确保不存在性能问题,负载呢。08奥运门票时间,09火车票系统。

樱花季节 发表于 2010-2-1 16:29

只要能足够‘充分’,就能保证质量

先要扣题:‘充分’的压力测试,何为充分的压力测试呢?
‘充分’体现在:测试环境需要与线上环境保持一致。包括硬件,软件环境。这点是可以做到的,
现在很多预发布环境其实就是真实的环境。
另外‘充分’还体现在:虚拟的场景需要考虑到真实场景的方方面面。作为一名测试人员,应该考虑到也能考虑到所有可能发生的情况。
一个产品,如果经过测试人员之手后,都不能保证质量的话,那只能说明测试还得努力。
基于上面2点,我认为做了‘充分’的压力测试后,是能保证软件上线后不存在性能问题的。
仅仅发表一下自己观点而已,大家轻点拍砖。:)

cyrcici81 发表于 2010-2-1 17:20

[quote]原帖由 [i]唐唐心语[/i] 于 2010-1-27 16:38 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=1414222&ptid=181373][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]
压力测试只是性能测试的一部分,所以即使压力测试再完美,也不能保证性能不出问题,毕竟性能测试还包括强度测试,负载测试。。。 [/quote]
支持你的说法,要搞清楚压力测试和性能测试的概念。有好多因素可以引起性能的问题,包括压力所带来的性能的影响。

wode51testing 发表于 2010-2-2 20:21

BUG是发掘不尽的

BUG是发掘不尽的

huna0102 发表于 2010-2-3 09:29

充分的性能测试,只能保证软件出现问题的概率降到最小,但是不能保证没有一点问题。

liujinqi 发表于 2010-2-3 15:32

首先"性能"这个提法太泛了,不好度量~~

其次,片面的关注“性能”本身没有意义~, 这样的牵引会使性能测试 纯粹为了性能而性能,为了指标而指标

不管是哪个方面的性能测试,绝大部分的情况下还是要考虑各种场景下“功能”是否能够正确!

表达一下观点,也不知道自己是正,是反,暂且中立吧:lol

痞子找茬 发表于 2010-2-3 16:12

没有完全测试

测试只是保证软件质量的一个手段,但是软件的质量不是有测试来衡量的。
所以测试不可能达到完全的
且有时由于测试环境(软硬件)的不同也会影响测试
测试在一定程度上来说是有局限性的

work_856 发表于 2010-2-3 18:13

:Q

daixing521 发表于 2010-2-3 18:23

我的观点:做了充分的压力测试,软件上线后还存有性能问题。
我分析一下前提:
1.一个是在测试环境,或者研发环境
2.一个是在正式环境,已经上线运营的环境
做足了充分的压力测试,所在环境也是在测试环境,或者是研发环境!可能测试环境会尽量模拟!但是不代表是真实的上线的环境!在测试环境做的压力测试和正式上线后压力测试都会有差异!
总结:做了充足的压力测试,可以尽量减少软件上线后存在性能问题!

lgp0403 发表于 2010-2-4 15:08

做了充分的压力测试,在软件上线后是否就不存在性能问题了呢?当然是不

做了充分的压力测试,在软件上线后是否就不存在性能问题了呢?
我们先来分析一下这句话。何为充分?每个人的定义标准不一样,每个公司的定义标准不一样,每个项目的定义标准不一样等等,可以说出很多的不一样。既然有这么多的不一样,怎么可以下结论说就不存在性能问题呢?
而且做测试显然还受到时间,人员,资金等诸多因素的限制,是一个在有限资源下达成可接受成果的一个过程。脱离上面这些来纯粹的讨论这个问题,我个人认为是毫无价值的

白痴宝贝 发表于 2010-2-10 11:45

大家的观点已经很充足了,压力测试是在一定时间内对系统不断的施加压力,而性能测试考虑的因素会很多,单纯的从稳定性上说:压力测试只考虑一次性的负载程度,而性能测试则要考虑系统在长时间的运行后会不会仍然是稳定的,系统在运行中占用的内存会不会自动释放等等;

夜魅 发表于 2010-2-19 10:02

支持反方

pt163 发表于 2010-2-22 22:23

命题不成立,正方说法存在绝对弱势(说得太绝对了)。:)

测试新新手 发表于 2010-2-24 15:46

压力是性能的一部分,所以压力测试只是性能测试中的一部分,根本不能说"做了充分的压力测试后,就不存在性能的问题",不然的话,根本不需要什么性能测试,都直接做压力测试就行了!

月上百合 发表于 2010-2-25 11:24

真正上线后会面临更大的挑战,任何测试都是在尽可能的减少bug,而不能完全保证没有bug,所以不能说做了充分测试上线后就没有性能问题了,个人观点,

云层 发表于 2010-2-25 13:14

压力测试的定义在于制造超出系统正常情况的负载,测试系统能否在这种情况下不瘫痪,压力测试重点在于稳定性和健壮性

而性能问题主要是面向需求的,是通过负载测试来定义指标和度量方式的,对于能够‘充分’进行负载测试的系统上线后很难出现真的性能问题,而做了充分的压力测试,只能说明你是个不死的小强,但是跑得慢

让我想起了NOKIA3310,怎么摔都不坏,但是你说它性能好?又大,有笨重,运行又慢

XZTest 发表于 2010-2-26 10:48

钻个空子

.        晕~ 这题也太一边倒了吧,正方太可怜了,看来大家唯物辩证法学的都不错啊,知道啥事儿都不能搞绝对化,呵呵~~,既然这样就钻个空子吧
        别着急辩,先分析题目吧
        1、充分:做到什么程度呢(理解为:不计成本地....)
        2、压力测试:性能测试里面名词一大堆,什么压力、容量、极限、负载...根本就没有统一的标准(理解为:压力测试笼统来讲就是性能测试)
        3、上线:实际环境复杂么,和测试环境有多大差异(理解为:实际环境和测试环境一样,访问量不大)

        嘿嘿,理解不同,答案也不同。如果我的测试环境就是真实环境,我的测试思路、方案没有任何问题,数据量和访问量等等都没有超出测试的预期(不考虑功能问题、需求变更和不可抗力的因素)――即充分测试,那么软件上线后就不应该出现问题。都做到这份上了就得相信自己。

zhujie19881129 发表于 2010-2-26 14:34

凡事无绝对!!!

creatysun 发表于 2010-3-1 10:27

如果只是压力测试,再充分也不能保证上线不存在性能问题

从题目背景来看,这里的压力测试就是对系统不断施加压力的测试,是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。并不是泛指的性能测试,没有进行可靠性测试(long run),怎么保证呢,通常上线的系统需要长期的运转,也许在一定时间内即使压力很大,系统仍能正常运行,但时间长了就会出问题,在测试中经常遇到跑long run时,在第5天或者更靠后的时间系统出问题。尤其是java的系统,内存比较容易在长期运行后出现问题。所以充分的压力测试,不能保证伤心不存在性能问题。

gaha 发表于 2010-3-1 11:30

多门外汉的问题啊……怎么琢磨出来的这是……

吃我 发表于 2010-3-1 14:43

BUG是杀不尽的。:victory:

页: [1] 2

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.