软件测试的关键??过程决定质量
作者:管理员 发布时间:[ 2010/2/3 13:35:18 ] 推荐标签:
中国软件行业协会将在8月22日召开“软件测试和产业发展研讨会”,郑人杰与陈宏刚两位专家会前发表了独到的见解。
“如果你把软件测试完全放在后阶段,错过了发现构架设计和业务逻辑设计中存在严重问题的时机,到那时,要修复这些缺陷将很不方便,因为缺陷已经扩散到系统中去了,所以这样的错误将很难寻找和修复,代价更高,因为错误已经扩散了!”清华大学郑人杰教授指出。
郑人杰教授介绍说:“我在清华大学首次接触软件测试和软件外包是在20世纪80年代初期,项目的具体内容是一个通用的软件测试工具。那是一个基于FORTRAN的动态测试工具。”郑教授怀着强烈的责任感,和其他三位专家一道承担了这个项目。该项目后来圆满通过验收,被日本《读卖新闻》在头版高度评价为“富士通公司从中国清华大学进口了高质量的软件”。这应该是中国早期IT工作者在软件测试技术方面进行的软件外包的尝试,这份报纸也成为了郑人杰教授的“家珍”。
软件测试是软件质量保证
广义的软件测试和检验包括了软件生产全过程的测试,包括对用户需求、概要设计的测试,例如产品是否符合用户需求,是否符合用户的使用习惯;而不仅仅是一些人认为的从代码阶段才开始进行测试。所以,需求指标等等都需要进行检验,以确保在各个环节上产品质量都有一个体系作保证,俗称“一步三回头”。如同制造业企业有专门的质量检验部门,需要在各个工序和阶段使用各种手段、按照规格进行检验,这些都是发现问题的过程,正是这些手段保证了不合格的产品被降级使用,或者根本不能转到下一道工序。
郑人杰教授说:“我们还发现,一个产品是否在市场上成功,还和产品开始的市场定位、用户需求分析相关。任何一个环节出现问题,都会严重损害整个产品质量。所以,我们谈软件测试,应该在更高的高度认识这个问题。我们是在讨论如何在整个产品开发周期控制和保证产品的质量。”
在产品开发过程中每个环节都要采取相关的检测、控制手段(QC),这是软件检测例行的工作。检测管理负责人需要回答下列问题:软件测试人员所采用的检测手段是否充分、步骤是否合理、是否必要和高效、检验人员技术是否达标,质量管理者终要向企业高管理者负责,这保证了企业的测试手段是充分必要的,这是我们经常说的质量保证(QA)。
第三方评测和软件测试的区别
可以看到,软件测试是在企业内部的质量控制和保证体系,而不是第三方软件评测。
评测是公正的机构对软件产品功能和性能等的证实,为了评价产品功能而测试,目的不是为了发现和定位软件内部的问题,对软件进行压力考验。郑人杰教授认为,我们不能把软件企业的质量控制寄托在成品的一次评审上面。
而软件测试正是为了检验开发过程中的错误而检测,它可能延续到用户购买试用,或者买软件之后,用户使用过程中发现问题以后反馈到开发商,这些都属于软件测试范畴,由此可见它与评测的区别。
软件测试的V模型
根据图示的V模型,测试一般采用两种方法:
第一,在代码完成后,对单元进行测试,然后有集成测试、验收测试等等,相当于对零件、部件和整机都分别进行检测。
第二种方法是,在概要设计、详细设计和编码每个步骤都要进行检测。尽量把问题及时发现、及时消灭。
如果问题不能及时被发现,这些隐含的问题也被带到下一个工序,正确的设计被编码,错误的设计也同时被编码。
郑人杰教授给开发人员的一个建议是:在工作的每个步骤都要考虑测试,千万不要认为,反正后有人测,后有人修正,形象地说,病情严重再去医院晚了。不断地意识到可能存在的问题,及时发现。自始至终开发人员都要有这个观念,才能成为成熟的软件工程师。
目前,作为计算机本科学生,可能没有选修软件测试课程,这样容易造成从业人员对于软件测试问题没有足够重视,或者没有足够的背景知识。但是由于IT技术发展迅猛,不能指望学校课程能够提供学生毕业以后五年十年的劳动技能。在软件测试、质量控制方面同样需要各方面人的关注,特别是企业界的关注。
CMM和ISO精髓
软件的质量标准比其他产品具有更多的复杂性,标准的量化、测试结果的取得、标准值范围等等都需要业内人士共同努力,加以完善。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11