最近小编在逛技术交流社区,在一条讨论自动化测试落地面临的痛点及可以创造的价值下面,有这样一条回复颇有感触,分享如下:
如果你让两个相互不认识、来自不同公司的测试工程师自由讨论,我猜他两寒暄的第一个问题会是:你们公司的自动化是怎么做的?
如果你问一个质量部门的测试架构师:你家的测试平台有什么功能?你能听各种天花乱坠的功能、自动化能力,让你叹为观止!
但同时让你问该厂的某位业务测试工程师:你们的自动化测试怎么样?对方很有可能告诉你:啥?自动化?哪有自动化?
很有意思吧?随着人工智能的发展,“AI+自动化测试”一定会成为主旋律。为什么会出现这样的现象呢?今天,我们就来聊一聊在绝大公司都存在的、而且很可能不愿意被外人知晓的问题:为什么我们公司/产品/项目的自动化测试做不起来?也就是自动化测试体系落地难的问题。
首先,我们针对“自动化测试”进行分词拆解。
所谓“自动化”,它是相对于手工而存在。它可以替代很多重复性的、非智力性的和非创造性的,并要求做到准确精细的工作。这中间的关键点在于:一是流程;二是标准。
所谓“测试”,它的本质是度量,是对质量进行全方位的定量评估。无论采用何种方式,最终的目的是要对每次迭代和变更带来的质量变化有一个定量的结果,然后针对性改进,这也是质量保障的目的。
所以,“流程+标准+质量保障”是自动化测试的核心要素。近十年来的各个技术热门话题,诸如敏捷、devops、自动化测试等等,最终能真正落于实地且被大规模应用和认可的,也就devops了,也说明了这点。
为什么?因为devops的对象,是对软件研发交付流程过程的标准化和优化,诸如代码管理、变更和验证都是可以标准化的,且这些流程的标准化都是大家认可的。
而自动化测试要想真正落地拿到好的结果的前提:一定是对测试对象进行流程标准化。
那么除了流程标准化,自动化测试还有哪些前提条件呢?小编整理了以下4条:
1.需求变动不频繁测试脚本的稳定性决定了自动化测试的维护成本。如果软件需求变动过于频繁,测试人员需要根据变动的需求来更新测试用例以及相关的测试脚本,而脚本的维护本身就是一个代码开发的过程,需要修改、调试,必要的时候还要修改自动化测试的框架,如果所花费的成本不低于利用其节省的测试成本,那么自动化测试便是失败的。
2.项目周期足够长自动化测试需求的确定、自动化测试框架的设计、测试脚本的编写与调试均需要相当长的时间来完成,这样的过程本身就是一个测试软件的开发过程,需要较长的时间来完成。如果项目的周期比较短,没有足够的时间去支持这样一个过程,那么自动化测试便成为笑谈。
3.自动化测试脚本可重复使用如果费尽心思开发了一套近乎完美的自动化测试脚本,但是脚本的重复使用率很低,致使其间所耗费的成本大于所创造的经济价值,自动化测试便成为了测试人员的练手之作,而并非是真正可产生效益的测试手段了。
4.在手工测试无法完成,需要投入大量时间与人力时也需要考虑引入自动化测试。比如性能测试、配置测试、大数据量输入测试等。
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。