一.软件测试的概念
测试涉及我们生活的各个方面,它是个非常广泛的概念。测试是随着现代化发展
而产生的。软件测试,它是软件工程的一部分。测试活动是一项工程性的活动,而不
是一项简单的、孤立的活动。
1.1
什么是软件测试
软件测试的典型说法
一个好的测试是指很可能找到尚未发现的错误的测试;
一个成功的测试是指发现了至今未发现的错误的测试。
这种说法明确指出“寻找错误”是软件测试的目的。
IEEE
对软件测试的定义(1983)
使用人工和自动的手段来运行过测试某个系统的过程,
其目的在于它是否满足规定
的需求或是弄清预期结果与实际结果之间的差别。
这种定义提出了软件测试是以是否满足需求为目标。
1.2.
软件测试的目的
测试的目的是最大限度地找出最多的错误。软件测试的目的是查找程序中的故
障,并力求设计出最能暴露故障的测试方案,从而合理地设计测试用例。证明、检测
和预防已经成为一个良好测试的目标。
1.3.
软件测试的分类
从实际用户使用的角度考虑,
软件测试一般采用黑盒测试;
从程序内部的设计结构
出发,软件测试一般采用白盒测试。从是否运行被测程序的角度考虑,软件测试一般
分为静态测试和动态测试。
1.3.1
静态与动态
静态测试是指被测程序的程序不在机器上运行,
而是采用人工检测呵计算机辅助静
态分析的手段对程序进行检测,静态测试是对被测程序进行特性分析方法的总称。
动态测试的主要特征是计算机必须真正运行被测程序,
通过输入测试用例对其运行
情况(即输入与输出的对应关系)进行分析,达到检测的目的。
1.3.2
黑盒与白盒
黑盒测试的基本观点是:
任何程序都可以看做是从输入定义域映射到输出值域的函
数过程,被测程序被认为是一个打不开的黑盒子,黑盒子的内容(实现过程)完全不
知道,只是明确要做到什么。
白盒测试即逻辑测试,
它依赖与对程序细节的严密检验,
针对特定条件和循环设计
测试用例,对软件的逻辑路径进行测试。白盒测试将被测程序看作一个打开的盒子,
测试者可以看到被测源程序。
1.4
软件测试的原则
软件测试从不同的角度会有不同的测试原则。
从用户角度:
用户希望软件测试能充分暴露软件中存在的问题呵缺陷,
从而考虑是
否可以接受盖该产品。
从开发者角度:
开发者希望测试能表明软件产品不存在缺陷,
已经正确地实现了用
户的需求,确立人们对软件质量的信心。
中国软件测评中心的测试原则就是从用户呵开发者的角度出发进行软件产品测试
的,通过测试,可以为用户提供放心的产品,并对优秀产品进行认证。
1.5
软件测试停止的标准
测试时间超过了预定的期限。
关于软件测试的浅谈
4
执行了所有的测试用例,但是没有发生故障。
使用特定的测试用例设计方案作为判断测试停止的基础。
正面指出了停止测试的具体要求。
根据单位时间内查出的缺陷的数量判断是否停止测试。