你,真的懂自动化吗?

Time will tell.

测试自动化:

  • 这是一种让测试过程脱离人工的一次变革。对于控制成本,控制质量,回溯质量和减少测试周期都有积极影响的一种研发过程。

自动化测试:

  • 通过将测试执行部分或者全部交由机器执行的一种测试,叫做自动化测试。这种测试不需要人的实时参与。同时,这种测试在小规模应用时,会比手动测试昂贵许多。

自动化测试可看作是测试自动化的一部分。



自动化工程师:

  • 专注于测试工具的研发,最主要的是会从成本的角度去考虑问题,这一点比较像PM。所做的一切是为了减少自己或者团队的工作量,尽可能的将重复、有规律可循的工作代码化自动化

自动化测试工程师:

  • 比较专注于测试代码的开发,以及测试结果的分析,对于被测设备本身非常感兴趣。他们比较倾向于一种完美主义,追求高质量而常忽略成本。这一点像开发人员。

绝大多数公司都会执着于自动化测试,而忽略测试自动化。这一点会让整个 自动化测试(automation test,简称AT)成本变得非常高。

我曾面试过一家公司的AT工程师,而他们对于AT的做法就是每天都在发布新的测试代码、运行不同的测试、修改之前的实例。我说你这个并不是自动化测试,而是一种用代码测试产品的手动测试。这样的测试经常被冠以自动化测试之名来混水摸鱼。

很明显该公司只是给代码单元测试贴上了自动化的幌子。

自动化测试的准则:

  • 不是将测试用例代码化了,就可以称之为自动化测试了。这是现在很多公司宣称自己是做AT的一个噱头。
  • AT的代码有很多的要求。

首先就是你的覆盖面要够广。个位数case的自动化完全没有意义。

第二就是你的case必须要能够复用:软件每天都在变,如果你的case要天天跟着软件变,那你的case是完全不合格的。

第三就是测试的规模要够大:要么时间长(case多或者是压力测试),要么测试产品多。这样才能体现出来自动化测试的优势。


测试自动化的几个准则:

  • 第一个就是要减少除工具研发部门外,其他所有测试部门的人力成本。这个是测试自动化追求的终极目标之一。

  • 第二个就是提高测试质量,不仅仅包括测试执行的质量,还包括测试的统计质量,数据回溯质量,等等等等。这些质量的提高可以帮助测试团队修正他们的测试方法,而不是每天将精力铺在无止境的数据收集和分析中。

  • 第三个就是要抢出时间。某一项工作自动化后的时间,要么比人手做时间短,要么可以在非工作的16个小时中进行。通过让电脑OT的方法来解放工程师或者项目经理。


自动化的入手点其实和三大准一样。看哪个需求更加迫切:

  1. 成本:自动化并不一定围绕测试执行,还可以包括测试的准备,log的提取,数据分析等等。将所有的与测试有关的工作逐一列出,然后找到重复的,可以被代码化的部分,评估现有工作成本和自动化成本,寻找到收益最大的工作块并顺序将之代码化。

  2. 质量:和成本差不多,只是在评估的时候需要评估的是该工作块现有的质量状况和需求质量间的差异,寻找到差异最多的那个模块,并将所有质量差的模块逐一进行自动化。

  3. 时间:和以上两点一样,都需要寻找到与测试有关的所有步骤和工作块,将其中关键路径上,动作最慢,耗时最大的部分进行自动化。


学习犹如逆水行舟,不进则退。

在这里推荐一个Python自动化资料学习裙:175317069。有各项已整理好的测试学习资源,也有行业深潜多年的技术人分析讲解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值