自动化测试成本高效果差,意义在哪?

news2024/11/15 9:18:41

自动化测试的成本高效果差?首先这个结论就太过武断了一些。

任何技术都需要放到适合的地方去使用,否则一定是达不到理想的效果的。举例大炮打蚊子,同样是成本高效果差,难道大炮就没有存在的意义了吗?

当然不是,只是咱们把大炮用错了地方而已。

为了将这个问题阐述清楚,所以本文行文结构如下:

1、自动化测试提升测试效率的应用场景

2、自动化测试于公,对于工作的更大意义

3、自动化测试于私,对个人的意义

4、自动化测试学习资料分享

一、先说自动化测试提升测试效率的应用场景
做自动化测试的前提,首先要分析当前项目和当前产品是否适合做自动化,适合做哪种自动化?

1、下面这2类项目,不适合做自动化,手工点是最高效的方法,坚持自动化倒会“成本高效果差”。

类1:如果项目周期很短,开发完就交付,后续也没有什么升级迭代的需求。

类2:项目目前非常不稳定,客户的需求经常性的发生变化。

2、下面这2类项目,就适合做自动化。

类3:项目周期比较长,需要进行长时间的迭代,项目的主体业务流程也比较稳定了,但是界面上经常根据用户的喜好要求来变化,可以先做接口自动化测试;

类4:主功能已经基本稳定,业务和界面都不再有大调整,就可以同时做接口自动化和UI自动化。当然,若有新增需求,则可以在手工测试稳定后,再逐渐进行自动化实现。

接口自动化流程

3、以上类3和类4,完成了接口自动化和UI自动化的脚本编写后,后续迭代开发过程中,想大大提升了测试执行的效率。可采用下面的方法:

新功能,对应的用例采用手工执行,老功能,对应的测试用例使用自动化脚本来执行。

小项目可能很难体会到这种便利。但项目大的话,比如我之前一个项目常规用例就有1万条左右,因为有自动化脚本帮忙保证这些常规功能的可用,这就非常方便了。

但,自动化测试的意义,不仅仅是编写自动化测试脚本来执行用例。

二、自动测试对测试人员更大意义在这里
自动化测试更大的意义是要想办法提升测试效率和版本发布质量。从广义上来说,自动化测试,是包括持续集成探索、测试工具平台的开发、智能自动化等。

1、什么是持续集成,自动化测试扮演什么角色?
在敏捷开发时代,持续集成的作用越来越突出。

1)持续集成解释:

持续集成目的,就是让软件产品可以快速的更新迭代的同时,还能保持高质量。持续集成就是说研发团队成员,要经常集成他们的工作。通常每个成员每次都需要集成一次或多次。每次集成,都可以通过自动化构建,包括编译发布、自动化测试验证,从而可以尽快的发现集成中的一些错误。

2)持续集成对于测试工作的的好处:

1)易于定位错误。也就是当你的持续集成失败了,说明你新加的代码或者修改的代码引起了错误,这样你很容易的就可以知道到底是谁犯了错误,可以找谁来讨论。

2)会提升测试效率。持续测试会与测试工具或者框架结合,如与xUnit,SilkTest, LoadRunner等等。

3)便于开发流程的管理。比如说,要把一个开发的build提交给测试组做测试,测完满意了,再提交到发布组去发布。

3)持续集成如何做呢,这其中离不开自动化测试这个关键步骤。

首先我们可以通过git(或其他类似工具)拉取软件代码。

然后我们要去做自动化构建,自动化编译、自动化测试、自动化步数、自动化发布等一系列步骤.

最后我们可以通过邮件自动化,实现通知团队中的相关工作人员去完成对应的工作内容。

持续集成是目前相对比较成熟的技术方案,在掌握了这一套持续集成的技术之后,可以在此基础上进一步开发测试工具和测试平台(测试开发的工作),如测试环境管理、配置管理、项目(需求/缺陷)管理、线上问题监控、打点统计等工具平台。

最后通过工具打通CI(持续集成)和CD(持续部署)的所有环节,使用持续集成的框架串联起来,可以大大的提高开发团队工作效率和产品的质量。

自动化持续集成平台示意图

2、什么是智能自动化测试
智能自动化测试是通过机器学习、大数据等技术,智能化生成自动化测试的用例和脚本,提高用例编写和维护的工作量。

通过智能自动化测试概念的介绍,自动化测试也是重要一环。

虽然这部分是测试行业内一直在探索的技术领域,目前并没有非常成熟的方案或者体系。但如果能够找出有效的、成熟的解决方案,那就一定是是自动化领域“牛逼”的测试人员。

三、对个人而言的意义,自动化测试是求职必备技能
企业对测试人员的技能要求越来越高,这不仅是经济形式叠加,更是软件测试行业的发展。

当前,企业对测试新人的要求,已拔高到自动化测试这水平了,如果测试技术还停留在手工阶段,那就很难找到工作。

所以,自动化测试,是测试人员必备的技能。将来无论换工作,还是比发展,自动化测试工程师肯定比纯手工好很多。

如果技能还是手工阶段,真诚希望你赶紧升级到自动化测试。不然未来,你靠什么建立职业护城河?你靠什么避免失业风险?

总之,自动化测试也是项目组在产品研发中非常重要的一个助力,可以帮助我们大大的提高测试效率,提升质量。不过前提是你能在适当的项目中选择适当的自动化技术来解决项目中的问题,否则就会给人感觉“成本高效果差”了。

四、自动化测试学习资料分享
第一部分我们提到了自动化测试的应用场景,提到了接口自动化和UI自动化。而从事自动化,还有个前提,那就是必须学习一门语言(对于零基础而言,我们学习python语言就可以)。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:
 
加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3.0.0 网络安全技术

一、端口安全 1、端口隔离 1.1 简介 以太交换网络中为了实现报文之间的二层隔离,用户通常将*不同的端口*加入*不同的VLAN*,实现二层广播域的隔离。只通过VLAN实现报文二层隔离,会浪费有限的VLAN资源,同时也只能实现基础的隔离操…

金和OA jc6 Upload 任意文件上传漏洞复现

0x01 产品简介 金和OA协同办公管理系统软件(简称金和OA),本着简单、适用、高效的原则,贴合企事业单位的实际需求,实行通用化、标准化、智能化、人性化的产品设计,充分体现企事业单位规范管理、提高办公效率的核心思想,为用户提供一整套标准的办公自动化解决方案,以帮助…

移动端开发进阶之蓝牙通讯(二)

移动端开发进阶之蓝牙通讯(二) 蓝牙广播是一种无线通讯技术,通过无线电波传输数据; 在蓝牙低功耗(BLE)协议中,广播通信是其重要组成部分,主要有两类使用场景: 单一方向的…

基本BGP配置试验 :配置 IBGP 和 EBGP

一、预习: BGP:Border Gateway Protocol 没有精妙的算法,但能承载大量的路由,它不生产路由,它是路由的搬运工 使用TCP做为传输层协议,端口号179,使用触发式路由更新 1. BGP路由…

喜讯!矩阵起源子公司通过“国家高新技术企业”认定,引领数据库行业科技创新!

近日,全国高新技术企业认定管理工作领导小组办公室,公布了《上海市认定机构2023年认定报备的第二批高新技术企业备案公示名单》,矩阵起源子公司矩智原力(上海)信息科技有限公司(以下简称“矩智原力”&#…

2024年【北京市安全员-C3证】复审考试及北京市安全员-C3证证考试

题库来源:安全生产模拟考试一点通公众号小程序 北京市安全员-C3证复审考试考前必练!安全生产模拟考试一点通每个月更新北京市安全员-C3证证考试题目及答案!多做几遍,其实通过北京市安全员-C3证模拟考试题很简单。 1、【多选题】《…

vue前端开发自学,插槽练习,同时渲染父子组件的数据信息

vue前端开发自学,插槽练习,同时渲染父子组件的数据信息! 如果想在slot插槽出口里面,同时渲染出来,来自父组件的数据,和子组件自身的数据呢。又有点绕口了。vue官方给的解决办法是。需要借助于,父组件的自定义属性。 …

利用低代码技术,企业怎样开拓数字化转型新路径?

近年来,随着技术的发展和市场竞争的加剧,企业数字化转型已成为一种趋势。许多企业已经完成了线上协作办公的初步转型,这主要得益于像钉钉、企微等发展完善的平台,只需将员工全部拉入这些平台,就能实现线上协作办公。 然…

2024java开发学习路线

文章目录 第一阶段【JAVA基础】第二阶段【数据库jdbc】第三阶段【JavaWeb】第四阶段【框架】第五阶段【微服务】第六阶段【常用中间件】第七阶段【查缺补漏】 别问,问就是Java已死!这是在2023年疫情解封后,市场经济低迷的情况下,有…

编码技巧:如何在Golang中高效解析和生成XML

编码技巧:如何在Golang中高效解析和生成XML 引言Golang中的XML基础解析XML文件生成XML文件错误处理和调试高级技巧和最佳实践总结 引言 在当今数据驱动的编程世界中,有效地处理各种数据格式是每个开发人员必备的技能之一。其中,XML&#xff…

快速高效处理长图:按指定高度切长图的方法,提升设计品质

在现代视觉传达设计中,长图作为一种常见的表现形式,被广泛应用于各种场景。如何快速高效地处理长图,使其符合设计要求和用户体验,成为设计师们面临的一大挑战。现在来看“办公提效工具”如何按指定高度切长图,提升设计…

Python: locals()详细解释

locals() 是一个内置函数,用于返回当前局部作用域的字典。这个字典包含了当前函数或模块中所有局部变量的名称和值。具体来说: locals()返回值:一个字典,包含了当前局部作用域的所有局部变量。 这个函数在不同的上下文中有不同的…

SpringBoot项目的两种发布方式(jar包和war包)

SpringBoot项目的两种发布方式&#xff08;jar包和war包&#xff09; 在springboot入门和项目示例这个项目和application.yml配置端口号和访问url路径基础上进行修改 1、使用jar包方式发布 1.1、在pom.xml中添加一个SpringBoot的构建的插件 <build><plugins>&l…

Openlayer【四】—— 控件

控件 控件是一个可见的小部件&#xff0c;其 DOM 元素位于 屏幕。它们可以涉及用户输入&#xff08;按钮&#xff09;&#xff0c;也可以仅供参考; 位置是使用 CSS 确定的。默认情况下&#xff0c;它们位于 容器&#xff0c;但可以使用 任何外部 DOM 元素。 其中ol/control是…

存储的基本架构

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、存储的需求背景二、自下而上存储架构总结 一、存储的需求背景 1、人的身份信息需要存储 这种信息可以用关系型数据库&#xff0c;例如mysql&#xff0c;那种表…

4 - JdbcTemplate

spring 框架如何处理对数据库的操作呢? 1. 基本介绍 文档&#xff1a;JdbcTemplate APIs : /spring-framework-5.3.8/docs/javadoc-api/index.html JdbcTemplate 是 Spring 提供的访问数据库的技术。可以将 JDBC 的常用操作封装为模板方法 已经提供了特别多的 API 2. 使用…

说一说文件转换服务的系统设计

一、背景 我们需要把word/ppt转换为pdf&#xff0c;刚开始自研&#xff0c;后改为和第三方服务合作。 因为涉及到第三方服务的源码及软件著作的安全问题&#xff0c;我们约定把待转换的文件下载到对方管控的机器里&#xff0c;而不是在我们的机器上安装第三方的转换工具。 这…

从0开始学Git指令(3)

从0开始学Git指令 因为网上的git文章优劣难评&#xff0c;大部分没有实操展示&#xff0c;所以打算自己从头整理一份完整的git实战教程&#xff0c;希望对大家能够起到帮助&#xff01; 远程仓库 Git是分布式版本控制系统&#xff0c;同一个Git仓库&#xff0c;可以分布到不…

VUE项目快速打包发布

VUE项目快速打包发布 首先在你的VS Code中新建一个终端 输入 npm run build 回车等运行结束之后会在你的项目中生成一个dist目录 此时再iis部署的时候把你添加的网站指定的目录指向dist即可

202405读书笔记|《作家榜名著:宋词三百首(马未都亲笔推荐版)》——绿酒初尝人易醉,一枕小窗浓睡

《作家榜名著&#xff1a;宋词三百首&#xff08;马未都亲笔推荐版&#xff09;》画很美&#xff0c;词也是&#x1f618;&#x1f618;&#xff0c;既廖远又色彩明艳&#xff0c;丰富而丰盈&#xff0c;看的很欢乐的一本书。部分节选如下&#xff1a; 艳溢香融 天遥地远&…