您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 业务知识 > 正文

软件测试工程师如何做好白盒测试

发表于:2022-05-01 作者:传说三哥 来源:知乎

1、什么是白盒测试

定义:按照程序内部结构,逻辑驱动测试程序。

目的:检测产品内部动作是否按照设计说明书的规范进行,检验程序的每条路径是否都能按照预定要求进行工作。

对象:源程序。

用代码内部的分支,路径,条件,使程序设计的控制结构导出测试用例。

2、白盒测试方法分类

①、静态测试

②、动态测试

3、白盒测试的原则

①、保证一个模块中所有路径至少被测试一次

②、所有逻辑值都要测试真和假两种情况

③、检查程序内部的数据结构是否有效

④、检查上下边界及可操作范围内运行所有循环

4、白盒测试的类别

①、软件共用问题的测试

②、语言测试

③、sql语句测试

④、数据类型测试

⑤、界面测试

⑥、数值队形测试

⑦、业务对象测试

⑧、数据管理对象测试

5、白盒测试依据

①、软件需求报告

②、软件需求规格说明

③、程序设计文档

④、软件界面设计

⑤、编码规范

⑥、开发命名标准

6、白盒测试流程

①、界面对象测试流程

界面对象(UI)→业务对象(BO)→数据管理对象(DMO)→DBserver端

②、业务对象测试流程

DBserver端→数据管理对象(DMO)→业务对象(BO)→界面对象(UI)

7、白盒测试方法

①、尽量先用自动化工具来进行静态解析

②、建议先从静态测试开始(静态结构分析、代码走查、静态质量度量),然后进行动态测试(如覆盖率测试)

③、以静态分析结果作为依据,再使用代码检查和动态测试方法对静态分析结果进行进一步确认,提高测试效率及准确性

④、覆盖率测试是白盒测试的重要手段,在测试报告中可作为量化指标的依据,对于软件的重点模块,应使用多种覆盖率标准衡量代码的覆盖率

8、代码检查

概述:主要检查代码和流图设计的一致性、代码结构的合理性、代码编写的标准性、可读性、代码的逻辑表达的正确性等方面。包括变量检查、命名和类型审查、程序逻辑审查、程序语法检查和程序结构检查等内容。

目的:

①、检查代码是否按照某种标准或规范编写的代码

②、检查代码以发现程序缺陷

③、通过检查代码容易发现程序产生的错误

④、通过检查代码来发现代码是不是流程图要求的;

⑤、通过检查代码来发现有没有遗漏的项目;

⑥、要代码易于移植,代码经常需要在不同的硬件中运行,或者使用不同的编译器编译;

⑦、要代码易于阅读、理解和维护。

方式:

①、桌面检查

②、走查

③、代码审查

项目:

①、目录文件组织

②、检查函数

③、数据类型及变量

④、检查条件判断语句

⑤、检查循环体制

⑥、检查代码注释

⑦、桌面检查

9、静态结构分析

定义:主要以图形的方式表现程序的内部结构(例如函数调用关系图、函数内部控制流图);通过应用程序各函数之间的调用关系展示了系统的结构,列出所有函数,用连线表示调用关系和作用。

主要分析:

①、可以检查函数的调用关系是否正确

②、是否存在孤立的函数而没有被调用

③、明确函数被调用的频繁度,对调用频繁的函数可以重点检查