概述:主要检查代码和流图设计的一致性、代码结构的合理性、代码编写的标准性、可读性、代码的逻辑表达的正确性等方面。包括变量检查、命名和类型审查、程序逻辑审查、
程序语法检查和程序结构检查等内容。
目的:①、检查代码是否按照某种标准或规范编写的代码
②、检查代码以发现程序缺陷
③、通过检查代码容易发现程序产生的错误
④、通过检查代码来发现代码是不是流程图要求的;
⑤、通过检查代码来发现有没有遗漏的项目;
⑥、要代码易于移植,代码经常需要在不同的硬件中运行,或者使用不同的编译器编译;
⑦、要代码易于阅读、理解和维护。
方式:①、桌面检查
②、走查
③、代码审查
项目:①、目录文件组织
②、检查函数
③、数据类型及变量
④、检查条件判断语句
⑤、检查循环体制
⑥、检查代码注释
⑦、桌面检查
9、静态结构分析
定义:主要以图形的方式表现程序的内部结构(例如函数调用关系图、函数内部控制流图);通过应用程序各函数之间的调用关系展示了系统的结构,列出所有函数,用连线表示调用关系和作用。
主要分析:①、可以检查函数的调用关系是否正确
②、是否存在孤立的函数而没有被调用
③、明确函数被调用的频繁度,对调用频繁的函数可以重点检查
10、SQL语句测试
主要检查以下两点:
①、语句检查
②、类型转换
11、代码检查的分析与评价
主要注意以下两点:
①、能力(陈述经代码检查证实了的本软件的能力)
②、缺陷和限制
12、白盒测试常用技术(7种)
①、逻辑覆盖法
1.1测试覆盖率
用于确定测试所执行到的覆盖项的百分比;覆盖项指作为测试基础的一个入口或属性,比如语句、分支、条件等
测试覆盖率可表示出测试的充分性,在测试分析报告中可作为量化指标的依据,测试覆盖率越高效果越好。但覆盖率不是目标,只是一种手段。
测试覆盖率包括功能覆盖和结构覆盖:
1.2逻辑覆盖
根据覆盖目标的不同和覆盖源程序语句的详尽程度,逻辑覆盖又可分为语句覆盖 、判定覆盖、条件覆盖、条件判定组合覆盖、多条件覆盖、修改条件判定覆盖、组合覆盖和路径覆盖。
1.3面向对象的覆盖
面向对象的覆盖主要讨论继承上下文覆盖和基于状态的上下文覆盖。
1.4测试覆盖准则
测试覆盖准则主要讨论(ESTCA)错误敏感测试用例分析和(LCSAJ)线性代码序列与跳转。
(1)ESTCA覆盖准则
(2)现行代码序列与跳转LCSAJ线性代码序列与条状LCSAJ是指一组顺序执行的代码,以控制流跳转为结束点。可产生4层覆盖
②、插桩技术