需求变化频繁的情况下,如何实施自动化测试

一.通常来说,具备以下3个主要条件才能开展自动化测试工作:

1.需求变动不频繁

自动化测试脚本变化的频率决定了自动化测试的维护成本。如果需求变动过于频繁,那么测试人员就需要根据变动的需求来不断地更新自动化测试用例,从而适应新的功能。而脚本的维护本身就是一个开发代码的过程,需要扩展、修改、调试,有时还需要对框架做出调整。如果所花费的维护成本高于利用其节省的测试成本,那么自动化测试就失去了价值与意义。

2.项目周期较长

由于自动化测试需求的确定框架的设计、脚本的开发与调试都需要一定的时间,而这个过程本身就是一个软件的开发过程,如果项目周期比较紧张,没有足够的时间去支持这样一个过程的话,就不要进行自动化测试。

3.自动化脚本可以重复使用

自动化测试脚本的重复使用要从三个方面来考虑:

1.所测试的项目之间是否存在有很大的差异性(如C/S系统架构与B/S系统架构的差异)

2.所选择的测试技术和工具是否适应这种差异

3.测试人员是否有能力设计开发出适应这种差异的自动化测试框架

二.自动化测试主要解决的问题:

回归测试时,需要投入较大的人力/工时;

实现手工测试无法达成的测试任务;

加深对业务的认知,有助于下阶段迭代中发现问题;

三.测试人员想要实施自动化测试,需要具备以下能力:

熟悉被测系统,熟悉被测系统对任何测试人员来说都是最起码的要求;

至少要熟悉编程语言Java或者Python,最好有一定的编码能力,同时代码逻辑要清晰;

可以根据所掌握的代码,学习一门自动化测试的框架,如Selenium/Appium/Robot Framework/TestNG等;

四.自动化用例一般在哪个阶段完成?

一般落后于功能的手工测试,可以在手工用例执行完成或功能上线后,再去补充自动化的用例。

自动化不是跟着新需求走,而是测变化的东西对不变东西的影响,一定不要做为了自动化而自动化的工作。

五.自动化测试分类?

UI自动化测试。价值最小,但是它最接近用户真实场景,也容易发现bug,但它的实现成本最高,太容易受外部环境影响脚本成功率。适当的UI自动化测试是有必要的,但是没有必要投入太多;

接口自动化测试。价值居中,覆盖大多数主要的接口是比较合适的。测试人员需要熟悉接口逻辑关系,否则接口测试代码很容易遗漏bug;

单元测试。价值最大,但是对测试人员要求比较高,一般由开发人员完成。

通常来说,UI自动化测试,覆盖少量主流程即可,接口自动化测试,可以考虑覆盖100%的流程;

六.在需求变化频繁的情况下,如果想要实施自动化测试:

折中的做法就是先对系统中相对稳定的模块与功能进行自动化测试,变动较大的地方进行手工测试。作为测试人员,我们应该明确:哪些需求发生了变化,这些需求变化后,对测试工作会产生哪些影响。包括会不会影响测试用例,如果影响,会对哪些用例产生影响。当发生较大改动时,还要明确是不是影响到了测试计划?明确这些变化,会对测试的工作进度产生多大的影响。当发现自己的大部分用例都受到影响,需要修改时,应该第一时间向上级反映情况。关于如何确定哪些需求发生了变化,最好的方式是通过配置管理进行需求跟踪。公司的测试任务分配,一般都是按照模块来分的。我们只需要自己维护测试线的需求跟踪,当建立了自己的需求跟踪矩阵以后,就可以快速定位变更部分,通过配置管理,所以可以及时变更你的用例,甚至是计划。当发现受变更影响的部分非常多时,应该及时通知上级,让他们了解情况,并做出决策。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

文档获取方式:

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

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

相关推荐
Narutolxy3 小时前
Python 单元测试:深入理解与实战应用20240919
python·单元测试·log4j
小码哥说测试21 小时前
软件测试技术之 GPU 单元测试是什么!
自动化测试·功能测试·测试工具·jmeter·单元测试·集成测试·postman
豆姐姐1 天前
金九银十,分享一波用例设计、数据库、编程笔试题!
自动化测试·数据库·测试用例·软件测试面试
工程师老罗1 天前
Java笔试面试题AI答之单元测试JUnit(6)
java·junit·单元测试
测试19982 天前
使用Selenium进行网页自动化
自动化测试·软件测试·python·selenium·测试工具·自动化·测试用例
测试杂货铺2 天前
selenium元素定位:元素点击交互异常解决方法
自动化测试·软件测试·python·selenium·测试工具·职场和发展·单元测试
A尘埃3 天前
MVC应用单元测试以及请求参数的验证
单元测试·mvc
Lossya4 天前
【自动化测试】移动app的分层测试以及自动遍历的基本概念
功能测试·测试工具·单元测试·自动化·分层测试·自动遍历
Coder-thinking4 天前
QPS和TPS的区别简单理解
压力测试
吕永强4 天前
软件工程测试
软件测试·单元测试·集成测试·系统测试·黑盒测试·白盒测试