软件自动化测试从入门到精通 一 :理论知识

软件自动化测试从入门到精通

第一章 软件测试理论知识



基本概念

测试是为了发现程序中的错误而执行程序的过程,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作,软件测试人员必须具有创新性和综合分析能力,必须具备判断准确、追求完美、执着认真、善于合作的品质,以及具有丰富的编程经验与查检故障的能力。

在现在的软件开发过程中测试越来越受到重视,开发管理有些更是以“测试驱动开发” 模式来管理日常的需求开发。

当然现在的软件系统越来越复杂,于是自动化测试被大量应用。


一、详细分类

1、按照软件内部结构和实现

1)白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查
2)黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求
3)灰盒测试:介于白盒与黑盒之间,在关注输出正确的同时也考虑内部的实现逻辑

2、按照是否执行程序

1)静态测试:不执行程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等
2)动态测试:运行被测程序,检查运行结果与预期结果的差异

3、按照开发阶段

1)单元测试:集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能
2)集成测试:把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试
3)确认测试:检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确
4)系统测试:把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试
5)验收测试:产品发布前进行的保证用户能正常使用的测试过程

4、按照测试目的

1)回归测试
2)压力测试
3)性能测试
4)稳定性测试
5)其他专项测试

二、测试模型

1、V模型
在这里插入图片描述

1)瀑布式模型,非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系
2)局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现

2、W模型
在这里插入图片描述

1)V模型的发展,强调的是测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试。测试与开发是同步进行的,从而有利于尽早地发现问题。
2)局限性:同V模型一样把开发测试作为一个串行的活动

3、H模型
在这里插入图片描述

1)针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序
2)局限性:对测试造成人力、物力和财力的浪费,对测试员的熟练程度要求比较高

4、X模型

在这里插入图片描述

1)软件测试过程活动完全独立,贯穿于整个产品的周期,与其他流程并发地进行,某个测试点准备就绪时,就可以从测试准备阶段进行到测试执行阶段。软件测试可以尽早的进行,并且可以根据被测物的不同而分层次进行
2)局限性:对于大型嵌入式项目很难实施

三、测试方法

1、等价类划分
1)有效等价类:对于程序规格说明来说是合理的、有意义的输入数据构成的集合
2)无效等价类:与有效等价类相反
2、边界值分析:
对输入或输出的边界值进行测试的黑盒测试方法
3、错误推断:基于经验和直觉推测程序中可能存在的各种错误,从而有针对性的设计测试用例的方法
4、因果图法:利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况
5、判定表驱动:判定表是分析和表达多逻辑条件下执行不同操作的情况的方法
6、正交实验法:从大量的实验数据中挑选适量的,有代表性的点来进行测试用例设计的方法,类似的方法还有聚类分析法、因子法等
7、功能图法:综合了逻辑覆盖和路径覆盖的测试方法,偏向于灰盒测试的一种测试方法
8、场景法:根据不同的触发场景来设计测试用例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值