|
|
|
|
移动端

1.3 需求、运行结果和正确性

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

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

技术沙龙 | 6月30日与多位专家探讨技术高速发展下如何应对运维新挑战!


1.3 需求、运行结果和正确性

设计软件的目的是为了满足需求。需求定义了软件预期完成的功能。一旦软件开发完毕,也就只有软件需求才能决定软件的预期运行结果。当然,在开发过程中,需求与最初相比可能发生了很大变化,但不管怎样变,软件的预期运行结果是由测试人员在测试中对软件需求的理解决定的。

例1.3下面给出两个需求,每个针对不同的软件。

需求1:编写一个程序,输入两个整数,输出其中的最大者。

需求2:编写一个程序,输入一个整数序列,输出排序后的整数序列。

假设程序max是根据需求1开发出来的。当输入为13和19时,很容易得出预期的结果为19。现在假设测试人员想知道输入程序的两个整数能否排成一行,然后接一个回车键;或者排成两行,每行后面接一个回车键。上面表述的需求回答不了这个问题,即说明需求1是不完整的。

例1.3中的需求2具有二义性。从需求中无法得知输出的整数序列是按升序还是按降序排列。假设程序sort是根据需求2开发出来的,那么,sort的运行结果将依赖于程序员在开发sort时所作的决定。

测试人员经常面临不完整和/或有二义性的需求。在这种情况下,测试人员可以借助不同的方法提炼出被测软件究竟要干些什么。如前文所说的程序max,要想知道两个整数是如何输进去的,一个办法是实际检查程序源代码;另一个办法是询问max的开发人员,在其考虑输入方式时究竟是如何决策的;还有一个办法,就是用不同的输入方式测试max,看它究竟接受哪一种。

不管需求是什么样的,测试都需要判定被测软件的预期运行结果,将实际得到的运行结果与预期运行结果进行比对,来判断被测软件是否运行正常。

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

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

读 书 +更多

网络工程师考试考前冲刺预测卷及考点解析

本书依据最新版《网络工程师考试大纲》的考核要求,深入研究了历年网络工程师考试试题的命题风格和试题结构,对考查的知识点进行了提炼,并...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊