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 阶段分析

 (1)单元测试:对软件设计的最小单元进行正确性检验的测试工作,语法、格式、逻辑错误

(2)集成测试:将所有的软件单元按照概要设计说明书要求组装成系统,接口是否存在错误、整体功能有无错误、界面是否符合设计规范、性能是否满足用户需求

(3)系统测试:集成测试的软件,部署到较为复杂的计算机用户环境进行测试

(4)验收测试

1.2.4 类型分类

(1)功能测试(2)界面测试 友好、易用、合理、位置正确性(3)性能测试(4)强度测试 找出因资源不足或资源争用而导致的错误(5)压力测试 超负荷环境中,检验系统能否正常运行(6)安全测试 防止非法入侵的能力(7)兼容性测试 不同平台、工具软件或不同版本,软硬件兼容能力(8)安装测试 是否能正确安装、文件的各项设置是否有效、安装后是否影响计算机系统、卸载软件是否干净、卸载后是否影响计算机系统(9)文档测试 检查内部或外部文档的清晰性和准确性,针对用户的文档:需求说明、用户手册、安装手册,是否与实际存在差别,文档是否简单明了、相关技术术语是否解释清楚

1.3 ST模型

https://blog.csdn.net/u011409644/article/details/55509750

1.4 软件测试流程

制定测试计划→测试设计→ 测试的执行 →测试的分析总结

1.5 软件开发各个阶段的测试任务

需求分析阶段 →设计阶段 →实现阶段 →测试阶段→ 运行维护阶段

版权声明:本文为gdf456原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/gdf456/p/9903508.html