|
|
51CTO旗下网站
|
|
移动端

1.1 人、错误和测试

《软件测试基础教程》第1章软件测试的基本知识,本章作为一个导引,其目的在于让读者熟悉与软件测试相关的基本概念,建立起全书的框架。在本书后续章节中将要详细阐述的问题,首先在这里被提了出来。读完这章之后,读者就能够在软件测试和软件质量方面提出一些有意义的问题。本节为大家介绍人、错误和测试。

作者:王峰/郭长国/陈振华 等译来源:机械工业出版社|2011-09-16 20:41

第一部分 预备知识

软件测试涉及大量的概念,一些是数学的,一些是非数学的。本书的第一部分介绍软件测试中一些广泛使用的基本概念。

第1章定义并介绍一个测试人员应该熟悉的基本术语和数学理论。

有的读者也许会发现,本书描述的处理错误的方式与众不同,它是一种基于语法的编码错误分类方法。虽然软件中的故障可以追溯到软件开发生命周期中的某些阶段,但最终还是代码没有满足用户需求而暴露出故障。因此,对于我们来说,理解系统分析人员、设计人员、编码人员所犯的错误是如何反映到用户最终得到的代码中就尤为重要了。

第1章 软件测试的基本知识 

本章作为一个导引,其目的在于让读者熟悉与软件测试相关的基本概念,建立起全书的框架。在本书后续章节中将要详细阐述的问题,首先在这里被提了出来。读完这章之后,读者就能够在软件测试和软件质量方面提出一些有意义的问题。

1.1 人、错误和测试

错误是我们日常生活的一部分,人们在思考、行动以及其行动产生的产品中都可能犯错。错误几乎无处不在。人们可能在生活、工作的任何方面犯错,如在观察、演讲、疾病诊断、外科手术、驾驶、体育运动、情感等方面犯错,同样,也能在软件开发方面犯错。表1-1列出了一些错误的例子。人们犯错造成的后果却千差万别——发音不准这样的错误可以忽略不计,其结果可能只是带来一个善意的微笑;而另一些错误可能带来一场灾难,如操作人员没有发现压力仓的安全阀门一直开着,这将引起严重的辐射泄露。

表1-1 人们犯错的常见例子

 

为了判断人们在思考、行动以及其行动产生的产品中是否存在错误,我们依赖于测试。测试的主要目的在于判断人们的想法、行动以及产品是否是所期望的,即是否满足要求。对想法的测试旨在判断一个概念或方法能否令人信服地被理解。对行动的测试旨在检查完成行动的技巧能否掌握。对产品的测试旨在检查产品能否如期望的那样工作。请注意,在程序设计过程中会引入语法和语义错误。假设最先进的编译器能够检查出全部语法错误,那么对软件的测试将主要集中于语义错误,即故障,它们能引起被测软件不正确地工作。

例1.1教师安排一次测试,以检查学生掌握所学内容的程度。网球教练进行一次测试,看球员发球怎么样。软件开发人员测试新开发的程序,看它能否如预期的那样运行。在以上任意一种情形中,测试人员都有一个意图,即判断人们的想法、行动或产品是否是所期望的。出现偏差的原因,可能是由于存在错误。

例1.2出现偏差的原因,也可能不是由于存在错误。假设某测试人员要测试一个整数排序程序,该程序能根据需要按降序或升序排列输入的整数序列。我们假设测试人员想检查该程序能否升序排列输入的整数序列。为此,他输入一个整数序列,但选择了按降序排列。我们假设该程序是正确的,其输出是一个按降序排序的整数序列。

通过对程序输出序列的检查,测试人员判定该排序程序有错误。之所以发生这种情况,是由于测试人员的失误或错误,导致了他对程序(产品)的错误判断或感觉。

【责任编辑:云霞 TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网络工程师必读——网络工程基础

本书是一本知识全面、系统、专业的网络工程基础知识必备图书。全书条理清晰、逻辑性强,遵循从全局到细节,从底层基础到高层应用的顺序全面...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊