做自动化测试老是失败?你真的会做吗?资深测试的总结整理...

news2025/1/10 23:24:33

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

自动化正在不断普及,也是公司快速有效地部署应用程序的好方法。但是,无论是要进行初始投资还是要扩展自动化工作,自动化测试都会带来某些看似艰巨的挑战。

为了尽早解决这些挑战,下面汇总了自动测试失败的主要原因。始终注意这些问题,可以作为参考,让自动化项目朝着正确方向进行测试自动化的指南。

1、过多的测试自动化

自动化测试项目可能失败的一个原因是,一些测试任务不应将其自动化。尽管测试自动化有助于跟上发布周期,但自动化并不是解决软件测试问题的万能解决方案。

实现100%的测试自动化是高度不切实际的期望,而尝试这样做的公司最终将面临更大的成本和一系列问题。

确保负责人知道实施测试自动化会带来什么结果,例如通过修复错误来提高产品质量或通过减少测试时间来缩短发布周期。

如果没有明确的目的使测试自动化,则将它们设置为从一开始就失败。这也将帮助您识别它们是否适合自动化,或者手动测试是否更适合这些情况。

确保战略性地针对最相关的用例自动化测试也很重要。从简单但重复的自动化测试开始此过程。这将为以后构建更复杂的测试方案奠定坚实的基础。

2、遗忘手动测试

测试自动化工作可能失败的另一个原因是,测试团队可能没有在自动化与手动测试之间取得平衡。如上所述,测试自动化并不能摆脱手动测试。

相反,质量保障团队应该提供了更多时间和精力专注为了使自动化成为更具战略意义的决策,应该在进行自动化测试时要牢记手动测试。手动测试的目的与自动测试的目的完全不同,这会影响手动测试的设计,制定策略和执行方式。

此外,业务测试人员拥有一套独特的技能,这使它们对于任何测试团队而言都是无价之宝。他们具有商业知识,可以更深入地测试应用程序,并且具有创建机器无法独立考虑的测试所必需的直觉。

3、业务逻辑更改

自动化测试对于重复性测试特别有用,但前期会占用大量时间和资源投入。无论是像测试登录过程一样简单,还是像检查主功能一样复杂,这些都是可以从自动化中受益的出色测试示例。

但是,当要更改网站用户界面时会发生什么?
例如,当调整登录按钮以使站点更加人性化时会发生什么?
幸运的是,有解决这些问题的简单解决方案。

某些自动化测试工具通过将AI集成到其平台中,使测试这些流程变得更加容易,例如AI如何影响测试行业,通过使用动态元素定位器,这些工具使用AI来克服其应用程序中的此类变化。

回到登录按钮示例,使用基于AI的技术的工具将能够找到登录按钮,尽管尺寸,颜色或形状发生了变化。

现在,即使使用的工具拥有很高的机器学习算法准确率,但当这些测试仍然失败时,会发生什么?

一个重要的免责声明是,尽管AI可以在更改应用程序后使测试维护更加容易,但是当所测试的流程发生变化时,它就无济于事。回到登录示例,AI可以正确克服更改的登录按钮,而无需任何人工干预。

但是,它无法完成将登录过程添加一个全新步骤的测试,例如两因素身份验证或完善其他个人资料。为了阻止此测试的中断,测试人员需要进入并修改测试以在登录过程中包括此附加步骤。

4、未及时更新现有流程

开始测试自动化测试项目通常会让参与者感到非常兴奋。正确实施后,您可以快速掌握可以节省多少时间,以及它如何帮助QA团队更加融入软件开发流程,但是,长期采用自动化技术的公司有时可能会因需要定期进行的大量自动化测试方案而感到困惑。

质量检查测试人员可能有一些自动化测试,在测试新功能时会经常使用这些测试,但随着时间的推移,其他测试可能会过时且麻烦。

为确保测试自动化工作继续让团队受益,重要的是要花时间优化现有的测试自动化套件。

尤其是当测试自动化操作更加成熟时,重要的是要回过头来确保旧测试用例仍然有用,而不是仅仅专注于自动化新领域。这将使测试操作保持精简,并使团队更容易扩展测试自动化。

5、未选择正确的工具

自动化测试可能失败的另一个原因是,没有选择正确的工具来满足自动化测试的需求。在选择自动化测试工具时,了解工具的范围以及它提供的功能是否与团队的优先事项兼容很重要。

有些公司可能正在寻找与移动应用程序兼容的解决方案,而另一些公司可能会优先考虑可以在其框架内运行的工具。

有了明确的自动化策略和目标,选择正确的自动化测试工具应该是一个简单得多的过程。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有在追逐梦想的途中,才能真正体验到人生的精彩。不要害怕失败,因为失败是成长最好的老师。坚持自己的信念和努力,你一定能够实现自己想要的未来。成功需要付出,每一步都算数,所以请一往无前,永不放弃。

只有付出才会有收获,只有拼搏才能创造奇迹。虽有风雨,仍需前行;虽有阻碍,也要坚定不移。让我们披荆斩棘,砥砺前行,创造更美好的未来!

只有在坚持不懈的奋斗中,才能创造出属于自己的辉煌。不要被眼前的困难吓倒,相信自己,坚定前行。一步一个脚印地向目标迈进,每一分努力都会化作成功的喜悦。加油!

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

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

相关文章

揭开生成式人工智能的力量:60+医疗保健应用场景

预计生成式AI在医疗保健领域的增长速度将超过任何其他行业。在医疗技术领域,AI可带来更高效流程、个性化客户互动、更大的创新和更高价值。为了帮助领导者理解这些机会,BCG最近研究了医疗技术中生成式AI的60多个应用场景:从产研和软件开发到业…

Android自动化测试,5个必备的测试框架

Appium Appium是一个开源的移动测试工具,支持iOS和Android,它可以用来测试任何类型的移动应用(原生、网络和混合)。作为一个跨平台的工具,你可以在不同的平台上运行相同的测试。为了实现跨平台的功能,Appi…

关于数据库索引的入门简述

一、简介 数据库索引是现代数据库中高效数据检索的一个重要工具。它在优化查询性能和加快数据检索操作方面发挥着重要作用。这里我们深入了解下数据库索引其内部工作原理、优点和局限性。 二、数据库 1、SQL 数据库 为了理解索引,先说一句数据库,数据库…

Jenkins小技巧汇总

设置变量 设置全局环境变量 全局变量除了系统内置的全局环境变量之外,用户也可以设置全局变量。设置路径:【Dashboard】–>【Manage Jenkins】–>【System Configuration 下的 System】–>【Global properties】从描述中我们可以看到&#xf…

Jetson nano 之 ROS入门 - - 深度学习环境配置

文章目录 前言一、Anaconda安装二、Pytorch 与 TensorFlow 环境配置三、TensorRT 推理引擎配置总结 前言 Jetson Nano是一款由NVIDIA推出的小型计算机,其性能优异、功耗低、体积小巧,非常适合用于嵌入式系统和边缘设备的深度学习应用。Jetson Nano搭载了…

【Git原理与使用】-- 基本操作

目录 添加文件 查看objects中的文件 小结 修改文件 版本回退 回退的回退 小结 撤销修改 情况一:对于工作区的代码,还没有 add 情况二:已经 add ,但没有 commit 情况三:已经 add ,并且也 commit …

Cordic IP核使用说明以及避坑记录

Cordic IP核使用说明以及避坑记录 参考文章:(140条消息) Vivado cordic IP核rotate和translate使用详解(附有代码)_cordic ip核 rotate_迎风打盹儿的博客-CSDN博客 (140条消息) VIVADO cordic IP核_卡布奇诺加勺糖的博客-CSDN博客 文章目录 Cordic IP核使用说明以及…

面试题:推排序是一种稳定排序吗?

面试题:推排序是一种稳定排序吗? 在回答该问题前,首先需要了解什么是稳定排序。 稳定性就是指对于两个关键字相等的记录,它们在序列中的相对位置,在排序之前和排序之后没有发生改变。通俗地讲就是有两个关键字相等的…

Node.js---菜鸟教程

文章目录 创建第一个应用创建 Node.js 应用 NPM 使用介绍使用 npm 命令安装模块本地安装使用 package.json模块的操作 回调函数阻塞代码实例非阻塞代码 事件循环事件驱动程序 EventEmitterEventEmitter 类方法实例error 事件继承 EventEmitter Buffer(缓冲区&#x…

Redis-缓存

新增或者更新数据时,创建以后顺便存到redis中去【维护缓存】 获取的时候先从redis缓存中拿数据 如果拿数据的时候为空,则到数据库中拿数据,后再存到redis缓存中去 大量的商品【包括冷门商品】都进行上面的缓存,那么就很耗内存 针对每个数据进行缓存的时候 维护一个过期时间…

MQTT(一)

MQTT(一) 1.背景 学习目标:经过了解,Netty占用服务器资源内存大、远距离传感器在极端条件下数据处理兼容较差(网络条件差,需要反复重连等)。从同行业了解到,现在主流工业传输使用M…

【博学谷学习记录】超强总结,用心分享 | 架构师 zabbix学习总结

文章目录 一、介绍zabbix zabbix专有词汇 二、zabbix zabbix实践修改zabbix zabbix语⾔服务器可视化指标解决zabbix zabbix乱码问题查看监控内容可视化监控agent agent的cpu cpu动态查看模板--监控项⾃定义监控项语法 一、介绍 Zabbix 是由 Alexei Vladishev 开发的⼀种⽹络监…

达梦数据库介绍

文章目录 前言一、达梦数据库的定位二、达梦有哪些工具1、达梦管理工具2、达梦数据迁移工具3、 达梦数据库配置助手4、其它工具 三、Linux下的工具1、数据库初始化工具2、数据库迁移工具3、其它工具 四、其它连接工具总结 前言 近几年由于各种原因,国内开启了一波国…

【Android】-- 如何对APP版本控制/更新?

目录 一、 前提准备 1、获取服务器 2、使用工具操作云服务器 二、Json格式网页 三、创建file_paths.xml及修改AndroidManifest.xml 四、在java代码加入更新检测代码 效果如图: 可以强制更新和非强制更新,和浏览器下载安装包。 一、 前提准备 1、获取…

0001-TIPS-2020-hxp-kernel-rop : ret2user

目的 理解系统调用的过程:从用户态进入内核态,再从内核态返回用户态。细节见文末的参考了解一般性提权方法commit_creds(prepare_kernel_cred (0)); 环境搭建 下载 pwn 2020-kernel-rop wget https://2020.ctf.link/assets/files/kernel-rop-bf9c106…

说精神力量的词,愿力很神奇

说精神力量的词,愿力最神奇! ​愿力,心力,精神,精 气 神,气 ,能量 【能量】是个外来词 趣讲大白话:200天了,布道的愿力推动我 【趣讲信息科技200期】 ******************…

【换根DP】生活在树上

换根DP板子题 D-生活在树上_牛客小白月赛46 (nowcoder.com) 题意: 思路: 看数据范围是1e6且是统计问题,求的是对于每一个点的统计问题,那就逃不出是换根DP了 首先dfs1一次把树形DP求出来,然后再考虑换根 设dp[u]…

Wireshark抓包分析(ARP TCP DNS HTTP)

目录 一、ARP 二、DNS 三、TCP TCP的总过程: ​TCP三次握手: TCP四次挥手: 四、HTTP 一、ARP 1.ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。 我们要抓ARP 同网段内…

(学习日记)2023.06.15

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

0003-TIPS-2020-hxp-kernel-rop : bypass-KPTI-with-trampoline

KPTI KPTI描述内容摘录自ctf wiki KPTI 机制最初的主要目的是为了缓解 KASLR 的绕过以及 CPU 侧信道攻击。 在 KPTI 机制中,内核态空间的内存和用户态空间的内存的隔离进一步得到了增强。 内核态中的页表包括用户空间内存的页表和内核空间内存的页表。 用户态的页…