ST第一章基础概念

1.1程序由程序、数据、文档 测试对象

软件测试目的:发现尽可能多的软件缺陷,并期望通过改错把缺陷统统排除,提高软件质量

1.2 ST分类

1.2.1 方式分类

(1)静态测试 :不执行被测对象程序代码,阅读程序代码、文档资料 语法错误

(2)动态测试:执行被测程序代码,与预期结果之间是否存在差异,检验程序的正确性、可靠性、有效性

1.2.2 方法分类

1.黑、白、灰盒测试

黑盒:功能测试、数据驱动测试,功能是否能正常使用,不考虑程序的内部结构和内部特征

等价类划分:程序的输入域划分为若干个区域(等价类),并在每个等价类中选择一个具有代表性的元素生成测试用例。

输入条件规定学历可为:专科、本科、硕士、博士四种之一 

边界值分析法:

程序的需求为: 
1、姓名:1——20个字符,不能包含数字,不能为空 
2、年龄:18——60之间的整数,不能为空 
3、如果填写信息正确,给出提示信息,并在“注册信息”文本框中输入相应注册信息 “xxx,年龄”

根据以上的需求,进行数据分析如下:

错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。

场景法:1、基本流(正确流):模拟用户正确的操作流程 
目的:验证软件的业务流程和主要功能 
2、备选流(错误流):模拟用户错误的操作流程 
目的:验证软件的错误处理能力 

白盒:结构测试、逻辑驱动测试,对象是源代码,花费大量人力物力要求高,只对重点部分进行白盒测试

代码检查法:看代码,主要包括:数据引用错误;数据声明错误;运算错误;比较错误;控制流程错误;接口错误;输入输出错误

走查: 能在代码中对错误进行精确定位,降低调试成本;可以发现成批的错误,便于一同得到修正。

同行评审的内容:

管理评审:对项目管理体系的适应性和管理活动的有效性进行评价。
技术评审:对产品以及各阶段的输出内容进行评估。
文档评审:包括需求评审(用户需求规格说明、产品需求说明、功能规格说明等),设计评审(软件总体设计规格说明、详细设计规格说明等),代码评审,质量验证评审(测试计划、测试用例)。
过程评审:通过对流程的控制,保证SQA组织定义的软件过程在项目中得到遵循,同时保证质量、保证方针能更快更好地执行。

静态结构分析法:不实际运行程序而通过词法分析、语法分析、控制流、数据流等技术对源码进行扫描分析

反汇编(Disassembly):把目标代码转为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,常用于软件破解(例如找到它是如何注册的,从而解出它的注册码或者编写注册机)、外挂技术、病毒分析、逆向工程、软件汉化等领域。学习和理解反汇编语言对软件调试、漏洞分析、OS的内核原理及理解高级语言代码都有相当大的帮助,在此过程中我们可以领悟到软件作者的编程思想。总之一句话:软件一切神秘的运行机制全在反汇编代码里面。

动态调试工具
OD、DEBUG、x64Dbg等
静态分析工具
IDA Pro、C32Asm等

动态测试中的逻辑覆盖:

按照其对测试的有效程度,又将其划分为由弱到强的6种:语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖。

1.语句覆盖每条语句至少执行一次。
2.判定覆盖每个判定的每个分支至少执行一次。
3.条件覆盖每个判定的每个条件应取到各种可能的值。
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
6.路径覆盖使程序中每一条可能的路径至少执行一次。

https://blog.csdn.net/liujian619/article/details/45270813

1.2.3 阶段分析

猜你喜欢

转载自www.cnblogs.com/gdf456/p/9903508.html