01、自动化测试流程图
02、主要过程描述
1、自动化测试的切入点
开展自动化测试的时间点很关键,需要在系统已经过多版本的系统测试,达到稳定之后。
2、可行性分析
在进行项目自动化测试之前,第一步就是要确认其可行性,是否可以实行测试自动化。如果项目时间紧迫、项目周期短、项目需求变幻无常则建议和上级领导商议,不要开展自动化测试。想要开展自动化测试,还是应该遵循以下几个前提条件:
软件需求变动不频繁
项目周期足够长
自动化测试脚本可重复使用
在这个阶段应该产出《可行性分析报告》
3、抽样 demo 分析
通过可行性分析后,接下来需要做一个demo,等待 demo 完成后,可以再次通过分析自动化测试工作能否顺利地开展下去,因为 demo 已经是一个实体案例,所以,可以完全通过透析 demo 来发现是否存在技术上的致命问题。通常在 demo 完成之后,有经验的自动化测试工程师或组长就能对这个项目的自动化测试工作有一个大体的把握了。
一旦通过了抽样 demo 分析,自动化测试就可以展开了。关于 demo 的选取,一般直接选择冒烟测试用例(大冒烟)写成测试脚本后执行,检查脚本是否能够成功运行通过,已设计的测试点是否全部执行到即可。
4、测试需求分析
到了测试需求分析这一步,分析的就不再是能否在项目中引入测试自动化了,而是在为下一阶段制定具体计划打下基础。测试需求其实就是测试目标,也可以看做是自动化测试工程师所要完成的新的功能点,需要分析项目中具体哪些测试需求(功能点)准备进行自动化测试。一条测试需求可以包含多条自动化测试用例,通过测试需求分析来判定项目中测试自动化要做到什么程度。
如在自动化测试用例的设计上,大体是以正向、反向划分的,一般在自动化测试中,优先考虑实现正向的测试用例后再去实现反向的测试用例,而且反向的测试用例大多都是需要进行分析然后筛选出来的,因为反向的测试用例实在太多了。我们知道,自动化测试是不需要也没有必要做到 100%覆盖率的。所以,在测试需求分析这个阶段,确定测试覆盖率以及自动化测试粒度、测试用例上的筛选等都是重点工作。
5、制定测试计划
在经过了测试需求分析阶段后,项目 PM 和自动化测试组长就该正式起草正式方案了。与以前的测试计划过程一致,只是在原来的测试计划中,添加对项目实施自动化测试所需的资源、测试范围、测试进度的描述。该过程产出物为《测试计划》。
6、自动化测试设计
框架设计、开发与搭建
自动化测试框架是能保证测试的分布执行,脚本模块化,数据驱动,日志分析,错误截图,报表回收,共享对象库,公共函数库,环境配置,统一设计模式,异常处理,场景恢复等的一个无人值守的,针对每个独立项目的测试框架。
7、测试用例设计
自动化测试流程其实跟手工测试流程差不太多,要先编写测试用例,只是被叫作自动化测试用例而已。先设计好自动化测试用例,再严格根据设计完成的测试用例编写测试脚本,这是一种规律、一个过程。此过程产出物为《自动化测试用例》。
自动化测试用例设计和手工测试用例设计是有明显区别的,手工测试用例是从无到有的过程,而自动化测试用例不是的。自动化测试用例是有参考物的,它就是手工测试用例。它有时候可以直接拿来用、有时候需要稍加修改,在此把整个自动化测试用例设计过程分为 3 步:
筛选手工测试用例的过程。
转换手工测试用例的过程。一般转换要素无非两种,一种就是测试用例的格式和规则,另一种就是优化自动化测试业务流程。自动化测试业务流程和手工测。试业务流程还是有一定区别的,自动化测试业务流程更精简、严格。
新增&补充自动化测试用例的过程。
8、测试脚本开发
根据《软件需求规格说明书》、《自动化测试用例》、《系统原型》,录制、调试、编写各个功能点的自动化测试脚本,并添加检查点,进行参数化。该过程还需要编写数据文件处理脚本、日志文件处理脚本、数据库处理脚本、公共检查点处理脚本等等。该过程的产出物是各个功能点的自动化测试脚本和其他公共处理脚本。
此过程需要注意的是:
自动化测试脚本代码必须严谨、规范。
自动化测试脚本需参照自动化测试用例开发,测试用例即是开发参照物。
尽一切可能使自动化测试脚本更智能、高效、稳定、复用性高。
开发过程多利用插桩+断点,检查业务组件是否存在缺陷或代码是否存在漏洞
脚本开发完毕后,至少运行成功 3 次以上,方可认为脚本已经没有问题。
必须使用一款优秀的代码版本管理软件来管理好每一个测试版本的自动化测试脚本,这也是自动化测试项目中非常重要的环节。
9、自动化测试数据设计
根据《软件需求规格说明书》、《自动化测试用例》设计出对各个功能点和相关业务规则进行测试的输入数据和预期输出,填写入对应的数据文件中。该过程的产出物是各个功能点的数据文件。
10、自动化测试执行
测试脚本开发完成后就要对测试脚本进行管理,执行;
测试脚本的执行主要包含如下内容:
测试环境的管理配置
测试脚本配置
测试脚本的执行
测试异常中断处理和恢复
11、自动化测试结果分析
对测试结果文件中报告错误的记录进行分析,如果确实是由于被测系统的缺陷导致,则提交缺陷报告。对自动化测试的结果进行总结,分析系统存在的问题,提交《测试报告》。
12、自动化测试脚本维护
如果系统发生变更时,对自动化测试脚本和相关文档包括《自动化测试用例》、《自动化脚本设计说明书》进行维护,以适应变更后的系统。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!