首页 > 编程知识 正文

有关软件测试的书,静态测试

时间:2023-05-05 02:35:20 阅读:166027 作者:1366

1 静态测试

在软件测试技术中,静态测试是经典的测试技术类。 在此,我先粗略估计一下

必须解释和说明静态测试技术。

静态测试不是测试数据的运行,而是对测试对象的分析过程

静态测试存在于软件生命周期的各级测试例如,需求分析、概要设计、详细设计和组件测试、集成测试和系统测试的阶段或级别。

静态测试的方法主要有人工(手工)评审静态分析(人工或机器自动检测)两种。 通常,可以将一种方法或两种方法混合使用。

静态测试中评审(或评审)的基本思想和目标是对软件缺陷或错误的一种预防措施因此,软件技术文档审核是静态测试的主要任务之一。

静态测试技术方法的构成和说明。

如下图1所示。

图1静态测试技术方法的构成

-需求分析和概要设计审查。 审查根据在需求分析概要分析阶段作出的审查进行,人工评审静态技术分析

-人工审查分为正式评审非正式评审。 正式审查是指对被测量者(文档或程序)检查的活动和流程(也称为技术审查); 非正式审查主要采用对文件或程序的走查活动和流程。 例如,就某个具体步骤进行调查。 调查通常采用单独或集体审查的方法进行。

2. 静态测试内容及过程 静态测试内容及过程

(1)静态测试内容

静态测试内容包括:测试3358www.Sina.com/分析、测试需求分析、测试详情3358www.Sina.com/、测试3358 www.Sina.com/com

)2)静态测试过程

进行测试需求分析:这是静态测试过程的第一步,确定测试需求,为测试和审查奠定基础。 进行测试概要设计:根据对测试要求的分析,完成测试计划的制定。 例如,测试内容、测试目标、测试策略、测试方法等。 进行测试详细设计:此阶段主要在测试流程中,完成各项具体任务的安排和实施的详细考虑。 例如,测试用例设计等。 运行测试并分析结果:根据静态测试计划运行静态测试的流程、完成每个测试任务并提交测试工作交付项。 3358www.Sina.com/(1)进行静态测试

静态测试通常采用概要设计两种策略。

人工分析发挥了人的智能和逻辑思维的优势,在分析过程中也往往利用专门的静态测试分析工具进行辅助。 目前,实际工作中基本采用两种方法的混合模式,既充分发挥人的智慧,又充分利用机器(工具)分析的高效便捷。

)2)静态分析的过程与编译过程不同

编译的功能不能代替测试。 编译系统还可以检查软件(程序)的错误,但其主要作用是检查程序语法等错误。 这是因为编译系统不具备软件测试功能,无法有效找出特定软件测试对象的缺陷、错误。

测试通常通过运行测试用例来实现。 此外,编译无法检测到程序的逻辑错误或缺陷。

(3)代码检查

代码检查的内容主要包括执行结果3. 静态测试的实施与执行等活动和过程。

代码检查的效果是快速找到软件的缺陷和错误。 测试行业实践表明,通过仔细检查代码(通常为源代码)的过程,可以检查程序中30-45%的程序逻辑设计和编码中的缺陷或错误。 代码检查在实际软件开发中普遍采用,特别是在组件(

单元(测试)。

33558www.Sina.com/(1)用图形表示程序的内部结构

静态结构分析主要以图形方式表现程序内部的结构关系。 例如,函数调用关系图、函数内部控制流程图等。 函数调用关系图是程序中每个函数的调用和被调用关系的直观表示。 函数内部控制流图用有向图表示函数内部的程序控制逻辑。

(2)用程序的控制流程图表示程序函数的逻辑结构

程序的控制流程图由多个节点和连接的边缘构成。 一个节点表示一个语句或多个语句,连接节点称为边,边表示节点之间的控制流。 图2示出了控制流图的示例。

图2

一个程序控制流图 

 (3)检查项 
静态测试的检查项,主要有:代码风格和规则的审核;程序设计和结构的 
审核;业务逻辑的审核。 
(4) 代码的质量度量 
针对软件的可测试性、可读性(可维护性),通常有 3 种不同的代码质量度量 
参数。 
Line(行)复杂度。Line 复杂度是以代码的行数作为计算度量的基准。
Halstead(运算符与运算元)复杂度。Halstead 复杂度是以程序中使用到的运算符与运算元数量作为计数目标(直测指标),据此来计算程序的容量和工作量。 
McCabe(圈)复杂度。它是将程序流程图结构转化为有向图结构(见图 2),以图形(有向图)为基础来衡量软件或程序的复杂度度量。 
代码质量度量常常通过静态测试来获得,所以静态测试方法也称为静态分析,静态测试是对被测程序进行质量特性分析方法的总称。 
(5)检查与规范、标准的一致性 
通过静态测试工具可检查测试对象是否与应用的程序规范、标准的相一致,以检查软件程序是否遵循了大部分的编程规则与标准规范。以工具检查的优势是可快速并准确的帮助开发者与测试人员进行自动化检测过程,以发现被测对象与规范、标准的一致性(其后例举)。 

 

 

 

 

 

 
主要参考文献 
1.《软件测试教程(第 3 版)》,jqdbg,电子工业出版社,2014 
2. 范根检查法(Fagan inspection) 
* 范根检查法是一种正式的,结构化的评审方法。针对的评审对象包含软件开发生命周期中的需求说、
系统设计、测试样例程序代码等大部分的软件开发中的输出物。 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。