前言
在目前在我国测试行业中,手工测试的占重比例达到了70%,虽说现在测试人也都很卷,但相对开发来说,测试的门槛低,薪资也相对比开发的低不少,所以做自动化测试。
方面一:是为了提升自己技术层面的深度。
方面二:是为了解决目前国内缺乏更高效的测试技术难题,最后就是为了提高自己在市场中的竞争力,想拿到高薪,不与时俱进是不可能的。
所以接下来我们讨论
什么情况下使用自动化,使用自动化的前提条件,却不是很多人都熟知。这就好比,拿到驾照会开车的人很多,但车子何时需要做养护,每个阶段养护内容是什么,应该不是所有驾驶员都知道。
所以,为了能彻底搞懂自动化的来龙去脉,我们今天就来聊一聊,自动化的场景及成本维护等…
一、回归测试
问:在日常测试工作中,由于新追加的需求(不允许怼产品经理)或者修复BUG,如何确定是否因其而引起新的BUG?
答:我们常用做法,就是回归测试。
问:那么在每次修复bug或新增需求时,都需要手动去回归吗?在没有更多的成本、资源、时间时,依旧需要手动验证、执行,但其成效是否能达到要求呢?
答:我想我们应该大声喊出来,我需要自动化,这样我可以有更多的时间去做更重要的事情。
在日常测试工作中,有大量的回归测试需要我们把它们给自动化了。
二、压测场景并发
问:某日老板对你说:对我们的拼单功能进行压测下,看看结果啥样?
通常情况下,我们不能喊几百号人,一起拼个单,这个也不太现实。
答:我要遵循我内心的指引,我需要自动化,这样让我非常省事。
UI稳定,接口不断升级
问:当前阶段UI已经不再大幅变更,而后端服务接口在不停的升级,你还需要手动的去验证吗?
项目前期,UI频繁变更,接口却稳定,你也需要对接口进行验证码?
答:你要勇敢的说出,我需要自动化,我需要WebUI自动化,我需要接口自动化。
在不同的技术层级,我们可以根据其更新频度等情况,将其自动化,以达到改进效率和提升质量的效果。
三、自动化风险
俗话说,任何事情都有两面性。引入自动化的好处那么多,成本及风险也会随之而来。接下来,我们就一起去看看,引起自动化测试的风险及成本有哪些~
团队成员的资历
想想你的团队,对于自动化测试是否有足够的编程开发知识和能力?如果没有,他们是否具备一定的基础,可以快速的掌握相应的技术?
四、成本投入产出比
不可否认的是,手工测试的成本也是很高的,尤其是对于高素质的手工测试人才,如果你认为自动化测试能解决手工测试的成本问题,那么,你要三思啊!
自动化测试的成本体现在以下几个方面:
自动化工具的采购
如果足够牛X,自己设计框架。
人才的引入或培训
薪资给到位,干啥都来劲!
五、脚本的维护
没有设计框架的能力,还不做维护脚本的事情?
自动化测试的实施推广
能不能推得动,沟通很重要。
六、慎重UI级自动化
在进行UI级自动化测试前要谨慎选择业务场景,尤其是要注意规避可能的大面积发生UI更新的场景,否则自动化脚本的维护成本会非常的高。
所以UI级自动化测试,通过做以下几点:
最核心的业务流程
或最典型用户业务场景
或重点关注的功能模块
七、介入阶段
不需要等到系统足够稳定,才介入到自动化测试。
接口自动化:接口开发完成,联调测试前,可介入;
UI自动化:UI级不频繁变更,功能基本实现,可介入;
性能自动化:功能稳定,可介入。
前提是团队拥有足够强的技术功底,能从源码级或数据层级就开始规划、设计自动化测试解决方案。
八、自动化复归率
问:是否需要100% 的执行自动化测试?
答:理想很丰满,现实很残忍。
接口、UI级别:别想了,你要是都实现了,点点点的作用如何发挥?
性能、压力等领域:有机会实现100%。
九、系统使用期限
如果是一次性的系统,完全没必要;
如果是长期维护产品,完全有必要。留着时间去约会,不香吗?
十、框架成熟度
如果选择的自动化场景生命周期不够长,那么请放开它。构建自动化的基本准则:让已经自动化的工作比手工执行成本要明显降低。
如果能将实现自动化测试工作做到日常化、版本化,那么其成本降低将是明显的、效率改进也是显著的、是可以获得良好的投资回报率的。
十一、总结
当你打算放弃梦想时,告诉自己,再多撑一天一个星期一个月,再多撑一年吧。你会发现,拒绝退场的结果令人惊讶。
每个人真正强大起来都要度过一段没人帮忙,没人支持的日子。所有事情都是自己一个人撑,所有情绪都是只有自己知道。但只要咬牙撑过去,一切都不一样了。
鸡汤再有理,终究是别人的总结。故事再励志,也只是别人的经历,只有你自己才能改变自己。