![](https://csdnimg.cn/release/download_crawler_static/87221307/bg7.jpg)
对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书
写的程序。
过程设计的工具(程序流程图、盒图、PAD 图、判定表、判定树)
面向数据结构的设计方法(jackson 方法):
程序复杂程度的定量(McCabe 方法):1、V(G)=E-N+2(E 是流图中边的条数,N 是结点数)
2、V(G)=P+1(P 是流图中判定结点的个数) 3、流图中的区域数等于环形复杂度。
编码
单元测试:又称模块测试。每个程序模块完成一个相对独立的子功能,所以可以对该模块进
行单独的测试。由于每个模块都有清晰定义的功能,所以通常比较容易设计相应的测试方案,
以检验每个模块的正确性。
集成测试:
在单元测试完成后,要考虑将模块集成为系统的过程中可能出现的问题,例如,模块之间的
通信和协调问题,所以在单元测试结束之后还要进行集成测试。这个步骤着重测试模块间的
接口,子功能的组合是否达到了预期要求的功能,全程数据结构是否有问题等。
白盒测试技术(逻辑覆盖、基本路经测试)
白盒测试时将程序看作是一个透明的盒子,也就是说测试人员完全了解程序的内部结构和处
理过程。所以测试时按照程序内部的逻辑测试程序、检验程序中的每条通路是否都能按预定
的要求正确工作。白盒测试又称为结构测试。
语句覆盖就是设计足够的调试用例,使得程序中的每个语句至少执行一次。
判定覆盖就是设计足够的测试用例,使得程序中每个判定的取“真”分支和取“假”分支至
少都执行一次,判定覆盖又称分支覆盖
条件覆盖就是设计足够的测试用例,使得程序判定中的每个条件能获得各种可能的结果。
判定/条件覆盖就是设计足够的测试用例,使得判定中的每个条件都取到各种可能的值,而
且每个判定表达式也都取到各种可能的结果。
条件组合覆盖就是设计足够的测试用例,使得每个判定中的条件的各种可能组合都至少出现
一次。
基本路经测试:
黑盒测试技术(等价划分)
黑盒测试时完全不考虑程序内部的结构和处理过程,只按照规格说明书的规定来检查程序是
否符合它的功能要求。黑盒测试是在程序接口进行的测试,又称为功能测试。
1、黑盒测试检查的主要方面有:
程序的功能是否正确或完善;
数据的输入能否正确接收,输出是否正确;
是否能保证外部信息(如数据文件)的完整性等。
用黑盒法设计测试用例时,必须用所有可能的输入数据来检查程序是否都能产生正确的输出
2、等价类划分
等价类的划分在很大程度上依靠的是测试人员的经验,下面给出几条基本原则:
(1)如果输入条件规定了取值范围,则可划分出一个有效的等价类(输入值在此范围内)
和两个无效的等价类(输入值小于最小值、输入值大于最大值)。
(2)如果输入条件规定了输入数据的个数,则可相应地划分出一个有效的等价类(输入数
据的个数等于给定的个数要求)和两个无效的等价类(输入数据的个数少于给定的个数要求、
输入数据的个数多于给定的个数要求)。
(3)如果输入条件规定了输入数据的一组可能的值,而且程序对这组可能的值做相同的处