51Testing软件测试论坛

标题: 对测试的新理解 [打印本页]

作者: ricmy    时间: 2010-8-5 10:02
标题: 对测试的新理解
转到测试部门已经半年了,在这半年的时间内,对测试的理解越来越深刻了
从一开始认为 测试依赖人的因素,只要下面的人专业知识上去,对产品品质会有很大的提升,于是花费了很大的精力投入到对员工的基础知识的培训,一个月下来确实有些成效,大家对测试的基本知识,以及case 撰写的一些方法都有很好的掌握,但是对产品品质确没有起到明显的效果
2个月后,认为品质不好的根本原因是Test Case 撰写不到位,如果Case 到位,那么可以将人为的因素减少,于是又花费了我2~3个月的时间将每条产品线的Test Case 重新进行Review ,且对公司的Test Case模板进行改良,这次有些效果,可是也不是很明显
6个月后,认为测试策略很重要,因为即使你有很好很全面的Test case ,可是每次测试的时候把握不住重点,再好的case 在有限的时间内你只能挑选部分进行测试,这个时候策略就变得尤其重要,而策略这个东西又得靠人。
原本想通过一些方法来减少依赖人因素,结果绕了一圈,又回到原点
当然如果是一个非常成熟的公司,遵循CMMI流程,可以通过组织的资料库来减低人的因素,可是,我们虽然过了CMMI3 但是如同虚设,起不到任何作用,看了最近有必要加强测试策略学习
作者: welcomezhang    时间: 2010-8-5 17:17
新理解是测试策略很重要,而不是人的因素或Test Case 撰写不到位????
作者: ricmy    时间: 2010-8-5 17:48
应该是说,不同的阶段所关注的重点应该不一样,需要根据当前的环境具体分析
作者: msnshow    时间: 2010-8-5 21:23
测试的方法有很多,要灵活应用,才能事半功倍,这个就得靠人的经验
作者: ricmy    时间: 2010-8-6 10:46
原帖由 msnshow 于 2010-8-5 21:23 发表
测试的方法有很多,要灵活应用,才能事半功倍,这个就得靠人的经验


没错,但是我们所追求的就是通过制定相应的流程或是引入某种先进的方法来减少对人的依赖,比如说像我上面说的测试策略的重要性,这个依赖于人,如果我每个版本都能将所有的Test Case 全部run一次,那么策略相对来说就不那么重要了,这样就会面对另外一个问题,就是自动化测试,我想自动化的引入,其中一个最主要目的就是将人解脱出来,减少测试对人的依赖。
  然而又并不是所有的公司,所有的产品都适合自动化测试,那么这个又需要依赖人来决定,而且自动化脚本的撰写也是依赖于人,所以这个事情就变得比较有意思了,我们一直在循环 从减少对人的依赖--> 到依赖于人的介入来达到这个目的-->到采用新的方法来减少对人的依赖--> 到依赖于人的介入来达到这个目的   就这样一直循环下去,就看谁能在这中间找到平衡点,那么谁就是成功的
作者: lgs0540    时间: 2010-8-6 10:53
工作业务能力也是检查测试到位的一方面
作者: 愚人    时间: 2010-8-6 18:22
产品质量是设计出来的,是开发出来的,不是测试出来的……
作者: ricmy    时间: 2010-8-9 09:24
原帖由 愚人 于 2010-8-6 18:22 发表
产品质量是设计出来的,是开发出来的,不是测试出来的……


如果是在一年前,我或许会非常赞同你的观点
可是现在,我对此有些其他的理解,一个好的测试,可以在很大程度上保证产品的品质
可是一个好的开发,比不上一个好的测试所能保证的力度(请注意,我只是强调测试所保证的力度大一些,并没有否认开发不能保证)
如果说一个好的测试可以保证产品 80%~90%的品质,那么我认为一个好的开发只能保证 50%~60%的品质,甚至可能还会低一些
原因有3点:
1. 一个好的测试,会包含End use 所可能遇见的场景,并对这些场景进行反复的测试,同时还能包含到一些End use 所不能遇见的测试,一个产品只要是经过一个好的测试所Release 出去,我相信用户的一般使用应该是没有问题,不然这个就不叫好的测试了
2. 一个好的开发,会对程序的架构,逻辑等做出好的设计,同时在单元测试方面也做的非常的到位,可是,好多时候开发只是对部分功能的测试,而非一个系统测试,所以在很大程度上无法做到一个全面的测试
3. 开发人员的测试通常具有局限性,因为他们对程序的流程非常的情况,在思考测试的时候,会有思维的局限性,有时候很难跳出这个圈圈,这就会导致测试会出现很多漏洞

以上只是个人意见,欢迎讨论
作者: chengning    时间: 2010-8-9 14:08
严重支持楼上 设计 开发  测试 的瀑布流程已经是过去式  弊端显而易见的就是测试没有充分的发挥 主要就是在需求和设计阶段测试没有发挥作用  。具体例子请看《人月神话》的产生。
作者: cscnkob    时间: 2010-8-12 10:16
看来有空一定要看看人月神话了
作者: 楠族开心果    时间: 2010-8-13 08:34
标题: 回复 7# 的帖子
我觉得此话差异,光靠他们设计,那出来的产品肯定存在很多bug
作者: 愚人    时间: 2010-8-14 13:01
说质量是设计出来并不是说不要测试,反而更需要测试,不仅仅是后期的测试,测试要在产品需求阶段就参与,提出可测试性需求,如要产品留一下接口供测试使用,如日志,如方便现有工具的使用,在需求阶段,测试要参与需求的评审,参与产品设计风险分析,不仅仅是测试,还要客服,QA,集合大家的智慧,经验,尽可能的预测风险,在设计的时候把缺陷降到最低。
    诚然,做到这样很难,但是不少优秀的公司已经向着这个方向做了,比如华为,如果发布三个版本还不能通过测试,项目经理直接下课,所以华为非常非常重视前期的设计和风险分析。
    后期的测试很重要,但是前期的测试更加重要,这就对测试人员提出了更高的要求。大家都听说过,越早发现bug,解决成本越低。微软公司专家撰写的一本书《测试有道——微软测试技术心得》中就一专家说“我再也不想做测试的,测试出的那些问题完全可在设计中发现解决”,可能不是原话,大体是这个意思。
    可以这么说,任何后来的测试都是亡羊补牢的工作,当然亡羊补牢,尤为不晚,但是如果能做到未雨绸缪,将是怎样的降低成本。记得某此培训课上,老师也讲过波音公司某架飞机的设计,就是前期工作做的比较好,没用怎么测试就可以试飞了。
    当然,公司发展程度不一样,能做到的设计质量也不一样。bug也不可能在设计时全消灭,就像不可能在测试中消灭。但测试只是把设计的缺陷或者编码的缺陷找出来了,然后开发去修复或者掩盖bug,表面上是测试帮助产品提高了产品质量,诚然,产品质量确实没那么坏了,但是产品质量并没有提高,仅仅是没那么坏了而已,因为设计在那里放着呢,这就是为什么不少国产软件或产品不如国外的,主要还是设计的不行,这就错过了未雨绸缪的机会;设计不行也就算了,还不重视后期的测试,发现亡羊也不补牢,或者就就简单的补补……
    不知道大家有没有遇到这样的问题,因为几个bug整个软件的设计架构都要重构,给你一个架构都很乱的软件,即便是你很牛,能测试出所有bug ,但是也不可能提高产品质量的。
    以上是一些浅薄的认识,欢迎继续讨论……
作者: 我123    时间: 2010-8-16 14:10
标题: 三顶!
原帖由 ricmy 于 2010-8-9 09:24 发表


如果是在一年前,我或许会非常赞同你的观点
可是现在,我对此有些其他的理解,一个好的测试,可以在很大程度上保证产品的品质
可是一个好的开发,比不上一个好的测试所能保证的力度(请注意,我只是强调测试所 ...


顶顶顶!三顶!
作者: ricmy    时间: 2010-8-17 10:21
原帖由 愚人 于 2010-8-14 13:01 发表
说质量是设计出来并不是说不要测试,反而更需要测试,不仅仅是后期的测试,测试要在产品需求阶段就参与,提出可测试性需求,如要产品留一下接口供测试使用,如日志,如方便现有工具的使用,在需求阶段,测试要参与需 ...


从愚人兄的字里行间可以看出,愚人兄对测试确实有很深的理解,这里确实让人佩服。
不过,我这里举一个软件行业之外的例子 看是否可以从另外一面来说明这个问题:
我想前几年**的事件大家都记忆犹新了,作为**,曾经的乳品行业第一位,通过了如ISO9001、 ISO14001认证、GMP审核和HACCP认证,从这些证书来讲,我可以说,三鹿在生产流程以及监督制度方面肯定是非常健全的,正因此获得了所谓国家免检产品称号,结果呢?就是因为免检,所以才导致后来的**事件,这是多么严重的一件事情呀!残害了多少无辜的儿童。从那以后国家视乎意识到“免检”的危害了,几乎取消了所有产品的免检资格。
  从上面的一个例子,我们可以看到产品的测试是很等的重要,从某种程度上来讲,只要产品测试各项指标符合要求,其实对其的生产过程反而可以不用那么太在意。
   诚然如你所说,一个好的开发,设计,可以减少一些产品的成本,但是这个并不能完全等于 一个高质量的产品,而从另外一个角度来说,一个好的测试约等于 一个高质量产品。同样,我从没有否认设计的重要性,我是一个从事了多年开发的人,对产品设计的重要性我想我的体会应该是相当深刻的,一个好的设计所强调的是模块划分的合理性,接口的规范性,架构的可扩充性以及可便于维护性,而这些所强调的只是代码的一个品质,而不是一个产品的品质。其实在早期的开发中很少有讲到设计的概念,那个时候也是有高品质的产品,软件设计也就是到了有OO开发后才慢慢的流行起来,当然我也不否认,那个时候也没有什么软件测试这一学科,但是那个时候开发人员其实应该是做了大量的单元测试,以及整合测试,系统测试,只是那个时候的这些概念不是那样的清晰罢了。
  正如前面所说,我进入测试领域还不到一年的时间,在很多认知上面可能存在一些欠缺,还欢迎大家通过讨论的形式来共同的进步。
作者: 愚人    时间: 2010-8-17 15:07
标题: 回复 15# 的帖子
我知道跟大家的争论点在哪里了,是大家理解的质量的阶段不一样,及产品设计质量和上市产品质量。
    首先,我从未怀疑过测试对上市产品质量的贡献,因为我自己做了差不多三年测试了,深知测试为保证质量付出的艰辛与汗水,请看准,这里是说保证而不是提高。因为我还是认为,产品的质量在设计的时候就已经确定了,后面的开发和测试都是为了尽可能的使产品的质量接近设计质量。
    ricmy兄在9楼说“如果说一个好的测试可以保证产品 80%~90%的品质,那么我认为一个好的开发只能保证 50%~60%的品质,甚至可能还会低一些”,并且列出了三点原因,愚人都同意,但这都是尽量的去保证质量,去保证的这个质量是尽可能的去达到设计时的质量目标,确实是,开发和测试在产品设计出之后,能做的就只有使产品质量与设计质量目标相差不是太远,也就是一个“保证”的作用,而不是提高。
    所以说大家的争论点是因为质量的阶段或者概念。试想诺基亚手机和国产手机并,谁的质量好,该是不言而喻的。我想着绝对不是国产手机没有测试好,而是设计质量就决定了产品质量。如果把诺基亚的测试人员和某国产厂商测试人员兑换,我想诺基亚质量依旧可以遥遥领先国产的(我不是崇洋媚外,事实就这样),因为设计在那里放着呢,开发测试只起到了保证作用。当然诺基亚的手机也不可能达到他们的设计质量目标的。
    至于 ricmy兄提到的XX事件,更说明了另一点——团队。只有高水平的设计人员是生产部出来高质量的产品的,或者说设计出高质量的产品不一定能生产出,后面还需要高水平的开发,测试,生产人员。把高质量的产品提交给用户需要团队的努力。这就是国外外包订单会给富士康。伟创力(虽然是血汗工厂,但是不能否定他们的制造水平),而不会随便给比亚迪。XX虽然是国内知名品牌,并不是产品质量是多么好,是因为符合中国国情,因为大多数国人的消费能力只能消费那个品牌。如果国民消费能力可以的话,估计xx也要被淘汰,因为设计质量不高。
    大家反对,估计是我说产品质量是设计出来的,开发出来的,那么我收回后半句,产品质量确实是设计决定的,后面的开发、测试和生产只是尽可能的去保证最终上市的产品接近设计质量,最终上市产品的质量,则是由团队合作决定的……

[ 本帖最后由 愚人 于 2010-8-17 15:08 编辑 ]
作者: ricmy    时间: 2010-8-17 17:14
原帖由 愚人 于 2010-8-17 15:07 发表
我知道跟大家的争论点在哪里了,是大家理解的质量的阶段不一样,及产品设计质量和上市产品质量。
    首先,我从未怀疑过测试对上市产品质量的贡献,因为我自己做了差不多三年测试了,深知测试为保证质量付出的艰辛 ...


愚人兄这样的理解我还是比较赞同的,一个好的团队往往可以保证从他们手上出来的产品品质,不过往大一点说,这个应该决定于一个公司的文化,或者说是一个公司的定位,往往就这2点,我们往往就可以判断一个产品的好坏,正如愚人兄前面提到的,一提到诺基亚,大家都与皮质耐用相联系,一提到苹果大家就与时尚个性与高品质所联系一样,与其说是设计决定的,还不如说是文化与定位决定的,我相信国产手机在研发能力上不至于说是不能设计一部好品质的手机,也不是他们没有这样的生产团队(富士康不也是我们自己中国人吗)而是他们给自己的定位就是这样(我就是一个二流产品),不过有时候因为策略的原因,苹果偶尔也会出现这样的问题,最近iPhone 第四代OS 不就是因为想抢占商机,结果出现信号不好的情况,紧急之下除了一个升级版,结果还是一堆问题,微软不也是出现过几次这样的情况吗?像之前的WinME以及最近Vista 不都是一个失败的产品吗。
   正如我前面所提到,我从来没有否认设计的重要性,也没有否认设计对产品品质的重要性,一个好的品质需要各方面的共同努力才能达成,缺了谁都不行!!
作者: 愚人    时间: 2010-8-18 10:00
标题: 回复 17# 的帖子
我没说富士康不是中国人的,我是说国外那些外表订单给实力强的外包公司……
呵呵……
嗯,文化和定位觉得了很多东西,是一个公司的灵魂……
作者: Jackc    时间: 2010-8-18 10:19
呵呵,很不错的帖子,仔细看完了。

说到NOKIA手机与国产手机,确实存在愚人兄存在的问题,但是我有一些自己的理解。

我们换一个角度看手机市场:从产品成本上来看

NOKIA手机的设计/生产/维护成本远远高于任何国产手机(不是简单的1~2倍的问题)。而支持长期高成本的产品输出,则需要足够大的利润。好在NOKIA的手机市场份额够大,它能够支撑。而国内呢,在手机行业中很难找出这样的企业。(也许有人会说中兴和华为,可惜这两家公司每年的巨额利润的主要来源不是手机产品)

所以,足够多的资金投入,加上合理的资源分配,才能组织强力的团队,最终才可能出现的高品质的产品。各个资源之间是密切相关的,缺一不可。

然而,对于目前国内热衷于追求当前利润的大趋势,很少有人会砸下大把的钞票再卧薪尝胆十几年吧,呵呵。
作者: moonylts    时间: 2010-8-18 18:16
真的很受用!!!谢谢大家的讨论,分析,给我这个软测小菜鸟了一堂生动的课~
作者: ricky_998    时间: 2010-8-19 16:48
呵呵,真的很不错的帖子!认真看完!受益匪浅!
作者: 愚人    时间: 2010-8-19 23:47
原帖由 Jackc 于 2010-8-18 10:19 发表
呵呵,很不错的帖子,仔细看完了。

说到NOKIA手机与国产手机,确实存在愚人兄存在的问题,但是我有一些自己的理解。

我们换一个角度看手机市场:从产品成本上来看

NOKIA手机的设计/生产/维护成本远远高于任 ...


    嗯,国内的更重视短期利润吧,大不了转行,就像山寨机,今天看到一句山寨厂商的豪言:未来的平板电脑只有ipad和山寨!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2