自动化测试的未来

自动化测试能做什么?
自动化测试会取代手工测试吗?
这恐怕是每个测试同学都曾经思考过的问题,这里我结合我的个人经历,讲讲我对这两个问题的思考。

个人简历

就职公司公司类型特点工作年限自动化技术成长阶段成长心得
微软(外包)软件产品外企,行业巨头5年c#,UI自动化成为公司需要你成为的人感谢微软提供的平台,利用平台迅速成长,别让自己离开平台后一文不值
Lattice Engines大数据企业服务,创业阶段3年C#,Nunit, python, jmeter成为你自己想要成为的人,提高自身价值从测试到QA,证明自己的价值
亿方云互联网企业服务,创业阶段2年Python, appium, mock成为公司不“需要”你的人,提升他人价值你必须拼尽全力,才会看起来毫不费力

自动化能做什么?在回答这个问题之前,我想代表自动化向手工测试致敬,因为你们才是最可爱的人
与自动化测试正好相反,手工测试是一个需要有责任心,思维缜密,良好的沟通,具备探索精神,还要能抵抗压力,排除万难等各方面都非常具有挑战性的工作
当程序莫名其妙挂掉,你一遍又一遍的排查原因,找出重现步骤
当面临一段不完整的需求需要写测试用例,你自行补脑各种业务知识,确保范围覆盖,万无一失
当以为某个缺陷与开发,产品,展开唇枪舌战,动之以情,晓之以理
当你临危受命,说今晚要上线个东西,你默默的给家人发了条微信:晚饭不用等我

而我却要告诉你们,这些都是自动化做不到的,请允许我向战斗在一线的小伙伴们致敬

回到自动化能做什么的问题?很多人都会问,软件测试过程中到底什么样的事情能被自动化?no,不要试图回答这个问题,世上无难事,只怕有心人,理论上任何事情都可以自动化,只要投入足够多的时间和精力,就一定可以做到,但是人生苦短…
什么样的事情适合自动化?yes,这才是我们要关心的,做自动化要考虑投入产出比,我看过一片文章说过,你的自动化脚本至少要运行6次以上,才能收回开发这个脚本的成本,计算机的优势就是重复做程序设定好的事情。于是问题的关键来了,那些事情是我们最经常重复做的事情?那些事情是我们的痛点?那些事情我们最不想做却不得不做?自动化不仅仅是测试用例的自动化,自动化打包,自动化部署,自动化集成,自动化生成测试数据,等等,凡是可以用代码来取代手工操作的,都可以归为自动化。然后我们再对比一下自动化和手工的投入产出比,即性价比,最终再决定要不要做自动化。切记,自动化不是目的,是手段。达成目的的手段有很多种,自动化只是手段之一。

自动化测试还承担:解决手工无法完成的任务,其实叫测试辅助工具更合适些
往往以半自动化的形式出现:多线程,白盒,性能,websocket等

UI自动化的发展有不确定性:
前端技术发展,与后端业务剥离,不仅仅是展示,越来越注重于交互和体验,而这些都是UI自动化的弱点
不要寄希望于机器学习和人工智能给自动化测试带来突变,那一天还早着呢,当前的人工智能还是弱人工智能,即基于数据找规律的层面,具有独立思考和解决问题能力的强人工智能或许永远都不会出现(无论程序再复杂,机器也是对编码的解释执行,编码本身并不会思考)

自动化不是凌驾于测试之上,而是服务于测试,达到保障质量的目的!
自动化的目的是提高测试的效率,关于质量与效率的话题,可以参考我的另外一篇文章
一切不以服务于测试为目的的自动化测试都是耍流氓!
一切不以质量为目的的测试都是耍流氓!

如何做自动化?
自动化的前提是标准化,自动化本身不难,难的是标准化的确立,这是一个将具体事件抽象化的过程
比如说客户端的fullsync单元测试,我们首先要确定被测对象是什么?覆盖全部逻辑需要什么样的数据?那些对象是被依赖的,是需要mock的?上下文关系是什么?是否每次都需要重新初始化测试数据?当这些问题都解决了之后,我们才可以开始自动化,要不然做到一半发现做不下去了,徒劳无功
从简单开始做起,积少成多,集腋成裘,先做摩托车,再造汽车
• 先做接口自动化,再做UI自动化
• 先做自动化打包,部署,再做自动化测试用例
• 先做半自动化的脚本,再做整体的工具
记住:
• 追求可复用性,没有可复用性的代码,就无法做到积少成多
• 复用别人已经做好的,如果你要生产汽车,就不要自己做轮胎
附:我修改的HTMLTestRnner,已经提交至github:https://github.com/buweiqiang/HTMLTestRunner

写在最后:
不要太依赖于自动化,自动化并非无所不能
踏踏实实学好一门技术,保你吃饱穿暖,能否大富大贵,还要看天分和机遇
不要给自己打不行的标签,不要轻言放弃,努力会有回报
不要活的太累,适当放松,做最好的自己

写给亿方云和亿方云的测试小伙伴们:
感谢亿方云在2016年的夏天把我带到杭州,开启了我杭州追梦的历程,并让我有幸结识了如此可爱的小伙伴们,我会永远记得,我们曾经一起并肩作战过
别了,亿方云,我挥一挥手,不带走任何文件,因为有你,我在任何地方都可以访问我的文件

最后将我最喜欢的一句话送给亿方云,代表我对亿方云的祝福:
长风破浪会有时
直挂云帆济沧海

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值