功能测试转自动化测试,先从一个通用的自动化测试流程开始

同大多数项目一样,自动化测试项目也需要一个完整的项目管理流程。在项目执行之前要进行充分的评估和计划、项目执行过程中要把控每个节点的质量,执行后要进行复盘和评估;确保项目顺利实施,并达到预期效果。

一、自动化项目启动

在项目启动阶段,我们要明确为什么要做自动化,并选择合适的项目进行自动化测试。

1、为什么要做自动化?

在启动自动化测试之前,我们要明确做自动化的目的,是为了提高测试效率还是因为客户需求,亦或者是为了提高自动化的覆盖率。只有明确了项目目的,才能更好地制定自动化策略,最大程度上满足最初的需求。比如说,我们为了满足客户需求而执行的自动化测试,就要以客户需求为主;而如果我们是为了提高测试效率,我们就要结合项目的实际情况,进行合理的用例选择与设计,以期最大程度上提高测试效率。

2、选择合适的项目进行自动化

首先,我们要明确一点,不是所有的项目都适合进行自动化。我们一般会选择项目周期比较长、版本比较稳定的项目进行自动化。因为短期项目的测试脚本无法复用,容易造成脚本和人力的浪费。此外,由于项目初期改动较大,我们会针对较为稳定的版本执行自动化。

二、自动化项目前准备

在明确了我们做自动化的目的并选择合适的项目之后,我们就要开始制定自动化策略与方案、进行方案评估。

1、制定自动化策略

首先,我们要明确实现的是哪类的自动化,是UI、接口还是unit?这是我们制定自动化方案的基础;其次,我们要确认哪些场景需要实现自动化,在这个阶段,要明确一点,不是所有的功能都适合做自动化,我们要选择基础的、改动较小的功能进行自动化;最后,我们要明确自动化脚本用在项目的哪个阶段,是单模块、集成还是验收阶段。

2、制定自动化方案

自动化测试方案包括却不仅限于以下几个方面:

制定实现方案:包括所选工具和编程语言;所选工具要能够满足测试需求、使用方便且便于集成、有明确的技术支持;

预估工期:根据项目的紧急情况和资源支持情况,制定一个合理的工期;

风险分析:可能遇到的风险包括但不仅限于团队成员能力不足、资源无法协调、实现效果不理想等;

所需资源:包括人力、设备、服务器等;对于团队成员,一个很简单的估算方式,假设我们一共有a条用例需要实现自动化,每人天可以完成b条用例,那么一个人完成所有用例需要c=a/b天;如果我们要在d天内完成,那么就需要d/c个人;

测试结果展现形式:通过邮件、网站或者其他方式展示测试结果;

以上所有步骤的基础是,我们要选择合适的人进行自动化方案的制定。

3、自动化方案评估

在自动化方案评估环节,我们需要评估该方案所需人力、物力以及资源配置是否合理,以团队当前情况,是否可以满足需求,可以寻求哪些外部支撑;是否有更加经济合理的替代方案等;此外,对于项目风险,可以采取哪些措施等。

4、建立规范

在项目进入执行阶段之前,我们要对执行过程中可能遇到的问题进行提前规范;

工作进度汇报:以何种方式进行进度汇报?定期汇报还是在关键节点处汇报?关键节点包括用例编写完成、框架开发完成、编码完成、试运行完成等;在汇报过程中,把控项目质量;

自动化测试用例如何选择?是重新编写还是从手工测试用例进行筛选?多人协作的情况下如何进行合并归档?自动化用例评审如何进行?

在项目执行过程中遇到问题如何解决?比如,系统环境出现问题应该找谁负责;工具使用遇到问题,应该谁来负责?尽量做到有章可循;

多人合作完成编码的情况下,遵循何种代码规范?

三、自动化项目执行

经过以上准备之后,我们进入项目的执行阶段;这个阶段的工作主要包括以下几个方面:

1、组建自动化团队

这个过程也可以在项目准备阶段就开始着手进行;当然,如果一个公司有成熟的自动化团队,这个过程就可以变得更加简单;我们要保证这个团队能够具备完成该项目所必须的能力,能够彼此合作;

2、分配任务

团队组建完成之后,就要开始分配任务;一个自动化项目的主要任务包括:用例准备、测试框架搭建、测试用例编写与集成、试运行等;

完成以上步骤之后,我们就进入了实际的执行阶段,在这个阶段,要根据项目规范,认真执行每个步骤,把控项目质量;

四、自动化项目分析与维护

自动化结果分析包括以下几个方面:

1、代码评审

代码评审的内容主要包括:代码结构设计的合理性、代码的可维护性、代码的可复用性以及可扩展性等;

2、用例评审

用例评审的主要内容包括:用例衔接设计的合理性,是否有更优的设计;用例之间的耦合度是否降到了最低;用例是否可以单个执行;用例输入数据设计是否合理;测试用例是否方便维护;软件版本改变时,用例改动的大小;用例断言设置的合理性等;

3、运行结果评审

运行结果评审的主要内容包括:代码运行效率、测试用例的准确性、通过率、输出报告的合理性和可读性;

4、相关文档

项目相关文档包括:输出代码、方案设计文档、详细设计文档、说明文档、环境部署文档等;

5、代码维护

自动化测试代码交付后,是需要持续维护的。那么,需要考虑后续工作如何进行,如何进行代码维护,如何进行用例补充等;

五、自动化项目实现后分析

1、建立评估目标

自动化测试项目常见的评估目标包括:

测试策略和方案设计的合理性,是否最大的提高了测试效率,实际收益是否达到预期;

资源配置是否合理,是否有资源分配不足或者过剩的情况;

自动化的覆盖情况,是否满足预期目标;

项目使用工具和语言的选择是否合理;

团队沟通方式是否存在问题;

项目风险评估是否合理,针对风险的改进措施是否达到预期结果;

项目成员个人工作复盘;

2、完成评估

针对以上评估目标,结合项目的实际情况,完成评估;

3、完成总结

通过以上流程,对项目整体安排情况、实现效果、业务进行总结,完成项目积累。

以上,是我在实际工作中用到的一些项目管理流程,在此进行整理;并不是每个项目都需要这么一个复杂的流程,需要根据项目的实际情况进行选择;但是,只有按照规范的流程走下来,你才知道哪些是适合的,哪些是可以省略的,找到适合自己团队的项目管理流程。如有遗漏,欢迎大家补充完善~

最后: 可以在公众号:软件测试小dao ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

在这里插入图片描述

这些测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

敲字不易,如果此文章对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

好文分享

北漂4年,做开发13K,转行自动化测试,真的靠谱吗···

从一个萌新小白到一次拿下5个测试offer,我的测试成长之路···

95后,刚工作2-3年就年薪50W+ ,才发现打败我们的,从来不是年龄···

自动化测试6年后,终于有了属于我自己的团队···

双非流本科毕业,自学软件测试也能成功进入阿里···

猜你喜欢

转载自blog.csdn.net/weixin_57805858/article/details/121119280