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

Posted 测试员小静

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了功能测试转自动化测试?先从一个通用的自动化测试流程开始相关的知识,希望对你有一定的参考价值。

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

一、自动化项目启动

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

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、完成总结

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

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

最后:【可能给予你帮助】然后下面分享一些我的自学资料,希望可以帮到大家。


这份资料整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。对于软件测试的的朋友来说应该是最全面和完整的备战仓库了,这个仓库也陪伴我走过了很多坎坷的路,希望也能帮助到你。

关注我的微信公众号:【 程序员小濠】免费获取~

送上一句话:
世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

我的软件测试交流群:175317069,群里有测试大牛分享经验~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦
 

以上是关于功能测试转自动化测试?先从一个通用的自动化测试流程开始的主要内容,如果未能解决你的问题,请参考以下文章

自动化测试工具加入黑科技带来新纪元

《测试效率总结》(转)

迪士尼都在用这个测试工具,请先从用例编写学起~

转:你不可不知的敏捷测试-定义,原则,方法和生命周期

流程封装与基于加密接口的测试用例设计(接口测试框架实战)

前端测试