Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >AI那么厉害,那测试开发和自动化测试这些职位是不是就多余了?

AI那么厉害,那测试开发和自动化测试这些职位是不是就多余了?

作者头像
软件测试君
发布于 2024-11-21 11:50:43
发布于 2024-11-21 11:50:43
1790
举报
文章被收录于专栏:测试人生测试人生

可以说现在的工作已经完全离不开AI了,它的强大影响了各个领域。尤其在互联网领域,不少人心里直犯嘀咕:这AI大模型都这么厉害了,那测试开发和自动化测试这些岗位,是不是就快没活儿干,要被淘汰啦?

其实呀,这里面的门道可多着呢,且听我细细道来。

AI在测试工作中的表现究竟咋样?

功能测试方面的功与过

AI大模型在功能测试这块儿,一开始还真能让人眼前一亮。它就像是个聪明的小助手,能根据软件功能的描述呀,还有那些文档资料,嗖嗖地就生成一堆测试用例来。比如说咱平常常用的办公软件,像处理文字的软件里设置字体、排版段落、保存文档这些个功能,AI大模型生成的测试用例那是相当全面,正常咋操作的,还有那些可能会出错的情况,比如输错数据格式啦,操作不合规啦,它都能考虑到。

但它也没那么神,一旦碰到那种专业性特别强的软件,AI大模型可就有点懵圈了。就拿医疗影像分析软件来说吧,这里头全是专业的医学术语,还有复杂得让人头疼的影像分析算法,再加上严格的医疗规范要求。AI大模型呢,它对这些专业知识也就是一知半解的程度,所以生成的测试用例常常会漏掉一些关键的小细节,没办法把软件在实际医疗场景下的功能完完整整、准准确确地检测出来,甚至还瞎编乱造,搞不好就把一些隐藏的细节功能问题给忽略掉了,这可就有点麻烦啦。

性能测试领域的喜与忧

性能测试方面,AI大模型也有它的本事。它能模拟不少用户同时访问软件的情况呢。比如说测个在线视频平台软件吧,它能模拟好多人同时在那看视频、切换视频、发弹幕啥的,然后看看系统的响应时间、吞吐量这些个性能指标表现得咋样。

但咱得知道,真实世界里用户用软件可没那么规规矩矩的呀。就拿看视频来说吧,有的人看着看着突然就暂停了,然后不停地快进、倒退,还会因为网络环境变来变去就不断切换视频清晰度。这些个复杂多变的用户行为,AI大模型想要精准模拟出来可就太难啦。所以要是光靠AI大模型来做性能测试,很可能就会漏掉一些只有在真实使用场景下才会冒出来的性能瓶颈问题,那软件的性能到底咋样可真就不好说喽。

安全测试角度的强与弱

说到安全测试,AI大模型也能起点作用。它能根据自己学到的那些安全漏洞模式,再加上大量的数据,对软件进行初步的漏洞扫描。像常见的SQL注入、跨站脚本攻击(XSS、这些个安全漏洞,它能发现一部分呢。

不过呢,现在网络安全形势那叫一个严峻啊,新型的安全漏洞就跟雨后春笋似的,不停地冒出来。有些攻击者可狡猾啦,想出的攻击手段又隐蔽又巧妙,比如利用新的技术手段生成的恶意代码,或者针对特定软件架构设计的零日漏洞。AI大模型呢,因为它数据更新和学习机制有点局限,它还没学习到,所以往往很难及时察觉到这些新型安全威胁。而且对于软件内部那些复杂的安全机制,比如多因素身份验证系统里不同认证方式的协同安全性,AI大模型也分析不透,搞不好就会漏掉一些潜在的安全隐患,这可关乎软件的安全命脉呀。

兼容性测试方面的得与失

AI大模型在兼容性测试上也能出点力。它可以模拟不同的操作系统、浏览器、设备等环境,对软件进行兼容性检测。就拿手机应用来说吧,它能看看在不同品牌手机、不同安卓或iOS版本,以及各类主流浏览器上,软件的界面显示、功能交互是不是正常。

可是现实中啊,有好多那种小众的、特定行业专用的设备和软件组合,它们的兼容性要求可特殊啦。比如工业控制软件,得和特定型号的传感器、控制器以及工业网络协议配合得好好的才能正常工作。AI大模型对这些特殊情况了解不多,可能就无法准确检测出在这些特定环境下软件的兼容性问题,这要是在实际应用中必然会出岔子,那影响可就大啦。

测开和自动化测试的独特魅力

测试开发岗位的核心价值

测试开发岗位那可是相当重要呀。测试开发人员要干的事儿就是开发各种各样的测试工具、框架和脚本,目的就是为了让测试工作更高效、更有效果。他们对软件的架构和技术栈那是了如指掌,能根据项目的具体需求,专门定制开发出合适的测试工具。

比如说吧,要是碰到那种复杂的分布式系统,测试开发人员就能开发出专门用来模拟分布式环境下各种故障场景的测试工具,这事儿你让AI大模型可就干不了。而且测试开发人员还能把自动化测试框架和持续集成/持续交付(CI/CD、流程紧密结合起来,确保每次代码提交后都能自动触发一系列测试,这样就能及时发现代码变更可能引入的问题。

你让AI大模型来干,不定给你整成啥样,还得靠人为去干预矫正。

所以,在优化测试脚本性能、提高测试覆盖率以及解决测试环境搭建中的复杂技术问题等方面,测试开发人员都有着不可替代的作用,他们就是软件测试的坚实后盾。

自动化测试岗位的关键作用

自动化测试岗位也有它的独特作用。自动化测试人员主要就是把手动测试用例转化为自动化脚本然后去执行。他们对各种自动化测试工具和技术那是相当熟悉,能根据软件的功能特性和业务流程设计出高效的自动化测试方案。

就拿电商平台来说吧,每次功能升级后,自动化测试就能迅速对商品浏览、下单、支付、物流查询等核心功能进行全面测试,确保新功能的引入没有破坏原有功能的正常运行。而且自动化测试人员还能对自动化测试结果进行深入分析,及时发现测试脚本中的问题并进行优化,保证自动化测试的稳定性和可靠性。通过持续优化自动化测试流程和脚本,自动化测试人员不断提升软件测试的效率和质量,为软件产品的快速迭代提供了有力保障。

你让AI大模型去理解吃透业务,生成用例,再搞成脚本,这生成那玩意,有谱嘛!

AI大模型与测试的携手共进

其实呀,AI大模型和测试开发、自动化测试岗位并不是谁要取代谁的关系,而是可以携手共进、优势互补的好伙伴。

AI大模型可以利用它强大的数据处理能力和快速生成测试资源的优势,为测试开发人员提供大量的基础测试素材,比如初步的测试用例、性能模拟数据等,这样就能大大提高测试工作的效率。同时,AI大模型也可以为自动化测试人员提供自动化测试脚本的模板或示例,加快自动化测试脚本的开发速度。

而测试开发人员呢,可以通过开发适配程序和接口,将AI大模型更好地集成到现有的测试工具和框架中。比如开发一个接口将AI大模型生成的测试用例自动导入到自动化测试框架中,实现无缝对接。自动化测试人员则可以利用AI大模型对测试结果进行初步分析和筛选,快速定位可能存在问题的测试区域,然后再凭借自身的专业技能进行深入的缺陷分析和定位。

另外,测试开发和自动化测试人员在日常工作中积累的大量实际测试数据和经验,可以反馈给AI大模型,帮助其不断优化算法和模型,提高其在测试工作中的准确性和有效性。就像把实际测试中发现的新型安全漏洞案例反馈给AI大模型,使其能够学习并更新安全漏洞检测模式,增强对新型安全威胁的识别能力。

可以说体力活,它都能帮你干了。

总结

虽然,AI 大模型在日常工作中独占鳌头了,但。它毛病也不少。

咱搞技术的,对软件架构、业务流程心里有数,专业测试技术和工具开发能力也不差,在工作里那也是至关重要。

要我说,还是得保持独立思考和 AI 大模型搞好分工,让二者相辅相成。这样软件测试才能又快又准,软件质量才有底,软件行业那些五花八门的需求也才能对付得了。你觉得呢?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-11-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
测试开发:是测试还是开发?
在软件工程中,测试和开发是两个核心的环节。这两个环节相互依赖,相互影响,构成了软件产品的整个生命周期。然而,在近年来,随着敏捷开发、持续集成、持续交付等先进开发模式的普及,一个新的角色——测试开发工程师,逐渐进入了我们的视野。他们的工作似乎同时涉及到了测试和开发两个领域,那么,测试开发是测试还是开发呢?
DevOps持续交付
2023/12/06
1K0
测试开发:是测试还是开发?
如何通过测试开发工程师的面试
以下是可能的测试开发岗位面试题目和参考答案,具体问题和答案还需要根据具体岗位和面试者经验和能力而定。
测试开发囤货
2023/03/14
4850
如何通过测试开发工程师的面试
自动化测试实施方案
自动化测试想要顺利开展,管理者需要做具体的规划。下文是之前为自动化测试项目启动会梳理的思路,算是一个草稿。笔者在自动化开展工作上也是一个探路者,希望在这方面有成功经验的同行不吝赐教。 本文档要阐释的问题 自动化测试开展的必要性(自动化测试要解决的问题,自动化测试能做哪些工作?预期收益) 自动化测试要哪些投入,人、时间和资源。如何分工? 自动化测试开展的里程碑,输出物 自动化测试要如何跟我们现有流程相结合 从哪些方面避免自动化测试工作的失败? 需要避免的陷阱 自动化的测试目标,测试的用途是什么?怎样帮助发现程
张树臣
2018/05/15
4.9K0
测试开发都这么厉害了?为啥不直接转业务开发?
前段时间,在后台收到一则留言:"请问一下,你觉得开发技术好,还是测试技术好,如果测试技术好,为什么不直接开发,干嘛做测试?"
测试开发技术
2024/03/28
1920
测试开发专题-开篇
近年来,随着DevOps和敏捷过程越来越广泛地被采用,软件测试、特别是自动化测试得到了迅速的发展。DevOps希望建立一个快速、频繁、可靠的一体化交付过程;敏捷则要求对交付件质量进行持续、及时、全面的反馈。软件测试作为研发过程中的重要环节,其能否达到快速响应、有效度量,实现过程自动化、系统一体化的目标,对整个组织的研发效率和产品质量将产生深远的影响。
陈哥聊测试
2021/06/03
5990
2025 年软件测试趋势:你准备好了吗?
随着软件开发模式的不断变化,软件测试行业也在经历着一场深刻的变革。曾几何时,手工测试一度占据主导地位,但如今,自动化测试已经成为标准,而 AI 驱动的智能测试正迅速崛起。测试工程师的角色与技能要求也在不断提升,从单纯的找 Bug 到如今的质量保障全链条参与。到了 2025 年,软件质量的保障不仅仅依赖传统的测试人员,更需要与开发、运维、安全团队的深度协作,形成 DevOps、DevSecOps 以及智能化测试的新生态。
FunTester
2025/02/26
5021
2025 年软件测试趋势:你准备好了吗?
小白自动化测试指南
自动化测试已成为软件测试公认的领域。顾名思义,自动化测试包括使用自动化工具以最少的人工干预执行测试用例,然后比较各种结果并生成测试报告。
FunTester
2021/06/23
5030
自动化测试项目为何失败
自动化的端到端测试旨在替代手动测试人员部分工作,通过前端以及后端API的程序化测试和性能测试以自动化方式执行的内容。并非手动测试所做的一切都可以自动化,手动测试存在的重要原因。例如,很难自动化UX和可用性测试的各个方面,但是大多数重复的测试都可以自动化。根据我的经验,大多数测试可以自动化,包括与复杂功能相关的测试,但是自动化成本就差异万千。
FunTester
2020/04/03
6600
功能测试都做不好,还搞什么自动化?测试开发?
不论你是什么时候开始接触测试这个行业的,你首先听说的应该是功能测试。通过一些测试手段来验证开发做出的代码是否符合产品的需求?
软件测试君
2021/11/09
5540
巧用自动化测试组合拳保证产品质量
“如何保证质量”一直是产品或项目过程中关注的焦点,而测试是产品质量把控环节中非常关键的部分。本文结合我们的实践经验,总结出一套有效的自动化测试组合拳。
宜信技术学院
2019/09/17
1.7K0
测试开发是“懂测试的开发”还是“懂开发的测试”?
作为测试开发工程师(SDET),我们似乎总在身份的夹缝中挣扎:代码写得像开发,流程把控像测试。
测试开发技术
2025/05/08
1170
测试开发是“懂测试的开发”还是“懂开发的测试”?
利用Robot Framework实现多平台自动化测试
基于Robot Framework、Jenkins、Appium、Selenium、Requests、AutoIt等开源框架和技术,成功打造了通用自动化测试持续集成管理平台(以下简称“平台”),显著提高了测试质量和测试用例的执行效率。
测试开发技术
2021/11/04
2.2K0
Python自动化软件测试,解放我们的双手!
对软件产品的特性进行监视和测量,主要依据软件需求规格说明书,验证产品是否满足要求。所开发的软件产品是否可以交付,要预先设定质量指标,并进行测试,只有符合预先设定的指标,才可以交付。
Tricy软件测试工程师
2022/03/11
6840
作为打工人,如何正确的选择自动化测试工具(不完全指南)
自动化测试解决了QA和开发团队目前面临的最大问题之一: 迅速响应需求且保障质量的软件和服务。毕竟移动互联网时代,什么都要求快,不但要求快,质量还要稳稳的。这与曾经测试主要靠手动测试日子相差甚远;在更早的时期,软件发行普遍缓慢,许多项目因错误和缺陷的影响交付的时间。
软测小生
2020/11/03
1.1K0
作为打工人,如何正确的选择自动化测试工具(不完全指南)
软件评测师-自动化测试技术
1.自动化测试是把人为驱动的测试行为转化为机器执行的一种过程,模拟手工测试步骤,通过由程序语言编制的测试脚本,自动地完成软件的测试设计、单元测试、功能测试、性能测试等工作,包括测试活动的自动化和测试过程管理的自动化
全栈程序员站长
2022/09/07
5710
软件评测师-自动化测试技术
手工测试如何进阶自动化测试?
最近收到不少小伙伴私信问,做了好几年测试,一直停留在手工测试点点点的阶段,想要进阶,想要做自动化测试,该怎么学习,以及需要学些什么?
测试蔡坨坨
2022/09/26
3520
如何降低软件自动化测试维护成本?
测试环境中,保证新增接口功能正确性,原有接口的回归(保证原有接口不被修改“坏”);
软测小生
2019/07/04
1.3K0
软件测试之自动化测试
自动化测试 自动化测试指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行结果。将人为驱动的测试行为转化为机器执行的过程。
测试开发社区
2019/09/20
2.1K0
软件测试之自动化测试
自动化测试与手动测试有什么区别?
手动测试是其由QA分析师手动执行对软件的测试。执行此操作是为了发现正在开发的软件中的错误。
归根落叶
2020/05/15
4.1K0
自动化测试与手动测试有什么区别?
毕业 2 年,涨薪 100%,从创业小团队到某中厂测试开发(附面试真题)
本人就读于某普通院校,在大学期间就开始实习找工作,误打误撞进入一家做工业大数据的创业公司。
霍格沃兹测试开发
2021/02/22
4880
相关推荐
测试开发:是测试还是开发?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档