遭遇测试概念--我与测试之z公司(1)

发表于:2012-11-08 11:23

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:huawen    来源:51Testing软件测试网采编

  在来Z公司之前,已经做测试工作4年了。但是并没有考虑过测试的概念。测试到底是在干什么。直到进入Z公司,才第一次看到了测试的概念。现在,我认为定义的最好的测试概念如下:

  软件测试的概念1:

  所谓软件测试,就是出于正常合理的目的,在特定的时间和环境,用事先制定的标准来衡量一种软件产品或特性是否符合预期。

  /*分析该概念,可以判断,完全出自工程化研发产品时的实践经验。该概念引入了时间这一要素,测试是在特定的时间进行,这一时间应该来自产品上市的时间点的倒推,这就强调了测试是受到时间限制的;如果因为测试工作准备的不充分,而导致产品发布的时间延误,可能该产品就没有上市的价值了。

  另一个要素是测试执行的前置条件,(1)衡量的标准必须事先制定,并在项目组达成一致;(2)测试需要的环境必须事先准备;

  测试的最大特点的说明,就是非常主观;是出于正常合理的目的。不过这一点还需要斟酌。*/

  测试定义的生动解释:

  什么叫“衡量软件产品或特性是否符合预期”?

  我们做一个软件项目,一个软件产品,或者其中的某个特性、功能、模块,在开始之前至少要有一个目标:要把它做成什么样。测试在其中起的作用就是:保证实施的结果符合这一目标。目标是做一个方桌,那就不能被做成板凳,测试过程存在的意义就是要检验类似问题。当然这个例子有点牵强,现实生活中没有这样的白痴。但如果我们看看二十年来软件业的发展,无论从其规模、复杂性,还是从功能的多样性,无一不在挑战着测试的极限。如何能系统性地衡量产品的实际和预期是否符合,对于当今软件业的实际情况来说,其难度真不亚于把一团乱麻理出个头绪来。

  单个测试点的验证是简单的,就像方桌和板凳,但是如果成千上万个测试点交织在一起,难度就会加大,这就需要系统性的测试了。

  为什么要强调“事先制定的标准”呢?

  测试人员对别人品头论足总是要有标准的,要不然无所依据,谁会服气。但是说起标准,大家往往容易忽略“事先制定”这一限定条件,由此造成的争论真不算少。因为现在软件的规模在增长,设计的时候很难做到面面俱到。而出于工作性质的不同,测试人员的眼光通常是苛刻而独到的。可是开发人员正好相反,产品对他们来说不亚于自己的子女,很难让他们在感情上接受别人的挑剔。所以这事先制定的标准就更加重要了。这既可以让测试人员在测试的时候有章可循,也可以避免开发人员受到过的无中生有的骚扰。

  而且在一般的项目中,开发人员掌握的资源更多(比如源代码)。而测试通常是比较弱势的,如果没有高层的支持,很难保证项目会按照测试的方向去实施。这就是“事先制定标准”的意义所在。其实,很多时候,事先制定的标准是在帮测试人员获得更大的发言权。

  “特定的时间”是什么意思?

  每一个开发项目都是有周期的,不会有老板能够容忍无休止的推迟。

  从V模型理论上来讲,测试是要从项目一开始就介入的,最初当然是准备阶段。开发准备什么,测试也应该同时准备怎么去拷打开发的成果。比如开发要做系统需求,从系统的系统的角度规定产品的规格,这时候测试就要从系统的角度,逐一验证这些规格是不是在以后的产品中得到了100%的遵循。/*系统人员在收集用户需求的同时,测试人员就要基于用户需求去准备该部分的测试需求和需求的预期结果;系统人员基于用户需求转化为系统方案,则测试人员就要基于系统方案,去准备该部分的测试需求;同时在进行系统方案的分析时,遇到的疑问和系统工程师进行沟通,如果系统工程师不能给出明确的答复,该疑问可以找用户求证。如果系统方案中出现遗漏,则将该问题反馈给系统工程师。也就是说,测试人员除了基于用户需求进行功能点验证的处理单元测试外,还要基于系统方案中实现的模块划分结构,进行模块间事件的遍历,即进行仲裁单元的测试。不过目前TM项目的测试还进行了基于系统方案的功能点验证的处理单元测试。*/

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号