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

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

1.需求变动不频繁

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

2.项目周期较长

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

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

自动化测试脚本的重复使用要从三个方面来考虑:
1.所测试的项目之间是否存在有很大的差异性(如C/S系统架构与B/S系统架构的差异)
2.所选择的测试技术和工具是否适应这种差异
3.测试人员是否有能力设计开发出适应这种差异的自动化测试框架

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

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

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

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

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

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

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

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

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

一般落后于功能的手工测试,可以在手工用例执行完成或功能上线后,再去补充自动化的用例。
自动化不是跟着新需求走,而是测变化的东西对不变东西的影响,一定不要做为了自动化而自动化的工作。

五.自动化测试分类?

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

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

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

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

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

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

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

在这里插入图片描述

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/87373.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于水基湍流算法优化的BP神经网络(预测应用) - 附代码

基于水基湍流算法优化的BP神经网络(预测应用) - 附代码 文章目录 基于水基湍流算法优化的BP神经网络(预测应用) - 附代码1.数据介绍2.水基湍流优化BP神经网络2.1 BP神经网络参数设置2.2 水基湍流算法应用 4.测试结果:5…

计算机视觉:深层卷积神经网络的构建

本文重点 上一节课程中我们学习了单卷积层的前向传播,本次课程我们构建一个具有三个卷积层的卷积神经网络,然后从输入(39*39*3)开始进行三次卷积操作,我们来看一下每次卷积的输入和输出维度的变化。 第一层 第一层使用3*3*3的过滤器来提取特征,那么f[1]=3,然后步长s[…

【技术】SpringBoot Word 模板替换

SpringBoot Word 模板替换 什么是 Word 模板替换如何实现 Word 模板替换 什么是 Word 模板替换 模板一般是具有固定格式的内容,其中一部分需要替换。Word 模板通俗的讲是以 Word 的形式制作模板,固定格式和内容,然后将其中的一部分数据替换掉…

业务系统架构实践总结

我从2015年起至今2022年,在业务平台(结算、订购、资金)、集团财务平台(应收应付、账务核算、财资、财务分析、预算)、本地生活财务平台(发票、结算、预算、核算、稽核)所经历的业务系统研发实践…

【科研论文配图绘制】task5 SciencePlots绘图包入门

【科研论文配图绘制】task5 SciencePlots绘图包入门 task5主要学习了SciencePlots拓展包的出图样式,掌握SciencePlots的安装及具体使用。 SciencePlots作为一个专门用于科研论文绘图的第三方拓展工具包,提供了主流英文科技 期刊(如 Nature、Science 和 …

SSM(Spring+SpringMVC+MyBatis)整合

目录 1、提出问题 2、解决问题 3、相关文件 1、提出问题 SSM(SpringSpringMVCMyBatis)的开发,MyBatis在没有与Spring和SpringMVC整合的时候,是单独使用,单独配置。 Spring和SpringMVC的整合是无缝衔接的&#xff0…

无涯教程-机器学习 - 矩阵图函数

相关性是有关两个变量之间变化的指示,在前面的章节中,无涯教程讨论了Pearson的相关系数以及相关的重要性,可以绘制相关矩阵以显示哪个变量相对于另一个变量具有较高或较低的相关性。 在以下示例中,Python脚本将为Pima印度糖尿病数…

多线程基础篇

我们平常说的一个程序,一个程序中有声音,图片,字幕 实际上是一个进程中有多个线程 main线程是主线程。 多核,多个cpu,多个线程,切换的很快 单核的话是一个cpu,某一时间只能是一个线程,但是因为…

法律小程序开发:让法律咨询更便捷

在现代社会,法律咨询服务越来越受到人们的重视和需求。为了方便用户预约法律咨询,很多律所都开始使用小程序来提供在线预约服务。那么,如何制作一款律所预约小程序呢? 首先,我们可以选择乔拓云网作为制作小程序的平台。…

Linux枚举文件目录、获取文件属性

目录 1.枚举指定路径下的文件目录2.获取文件属性stat其他方式&#xff1a;Linux获取文件属性stat()、fstat()、lstat()函数实现stat属性代码 1.枚举指定路径下的文件目录 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <dirent.…

【算法专题突破】双指针 - 盛最多水的容器(4)

目录 1. 题目解析 2. 算法原理 3. 代码编写 写在最后&#xff1a; 1. 题目解析 题目链接&#xff1a;11. 盛最多水的容器 - 力扣&#xff08;Leetcode&#xff09; 这道题目也不难理解&#xff0c; 两边的柱子的盛水量是根据短的那边的柱子决定的&#xff0c; 而盛水量…

ubuntu22安装和部署Kettle8.2

前提 kettle是纯java编写的etl开源工具&#xff0c;目前kettle7和kettle8都需要java8或者以上才能正常运行。所以运行kettle前先检查java环境是否正确配置&#xff0c;java版本是否是8或者以上。 kettle安装 1、创建kettle目录&#xff0c;并将kettle的zip包解压到kettle目…