这是两个很绕口的词。而且乍一看起来好像就是同一份工作。今儿聊聊我个人对于这两者的认识。
举例:
有一天,一家手机公司要做一个UI自动化测试,于是他们聘请了一名工程师。
这个工程师需要做的事情,首先就是setup一个自动化测试环境。单单从这方面来说,测试工程师和自动化工程师需要做的是完全一样的。比如搭建起来一套完整的UiAutomator环境。
之后就会有区别了。当环境搭建好以后,测试工程师的主要精力就会铺到编写脚本,执行测试上。而自动化工程师则会把精力放在如何优化UiAutomator环境上
比如,大家都知道UiAutomator的case编写完成后,首先需要通过ant编译,然后再通过adb命令进行push,最后才能执行。这一点上,一般来说测试工程师就不会做什么改变了,但是自动化工程师一定会做一个程序或者批处理或者其他的什么,让这几个步骤变成点一下就全干完的事情。
什么是测试自动化:
这是一种让测试过程脱离人工的一次变革。对于控制成本,控制质量,回溯质量和减少测试周期都有积极影响的一种研发过程。
 什么是自动化测试:
通过将测试执行部分部分或者全部交由机器执行的一种测试,叫做自动化测试。这种测试不需要人的实时参与。同时这种测试在小规模应用时会比手动测试昂贵许多。
自动化测试可以看作测试自动化的一部分。
不同的工程师,工作不同:
一个自动化工程师,会比较专注于测试工具的研发。最主要的是这个工程师会从成本的角度去考虑问题。这一点比较像PM。他所做的一切是为了减少自己或者团队的工作量,尽可能的将重复的,有规律可循的工作代码化,自动化。
一个自动化测试工程师,会比较专注于测试代码的开发,以及测试结果的分析。对于被测设备本身非常感兴趣。他们比较倾向于一种完美主义者,追求的是高质量而经常忽略成本。这一点更像开发人员。
现在绝大多数公司都会执着于自动化测试,而忽略测试自动化。这一点会让整个AT(automation test,下同)成本变得非常高。
我曾经面试过一家公司的AT工程师,对方对于AT的做法就是每天都在release新的测试代码,每天都在run不同的测试。每天都在修改之前的case。我说你这个并不是自动化测试,而是一种用代码测试产品的手动测试。这样的测试,经常被冠以自动化测试之名混水摸鱼。
  这家公司很明显的只是将代码单元测试贴上了自动化的幌子。

自动化测试的几个准则:
并不是将测试用例代码化了,就可以称之为自动化测试了。这是现在很多公司宣称自己做AT的一个噱头。
AT的代码有很多的要求。
首先就是你的覆盖面要够广。个位数case的自动化完全没有意义。
第二就是你的case必须要能够复用:软件每天都在变,如果你的case要天天跟着软件变,那你的case是完全不合格的。
第三就是测试的规模要够大:要么时间长(case多或者是压力测试),要么测试产品多。这样才能体现出来自动化测试的优势。、
测试自动化的几个准则:
第一个就是要减少除工具研发部门外,其他所有测试部门的人力成本。这个是测试自动化追求的终极目标之一。、
第二个就是提高测试质量,不仅仅包括测试执行的质量,还包括测试的统计质量,数据回溯质量,等等等等。这些质量的提高可以帮助测试团队修正他们的测试方法,而不是每天将精力铺在无止境的数据收集和分析中。
第三个就是要抢出时间。某一项工作自动化后的时间,要么比人手做时间短,要么可以在非工作的16个小时中进行。通过让电脑OT的方法来解放工程师或者项目经理。
 自动化的三大入手点:
自动化的三大入手点其实和三大准则是一样的。看哪个需求更加迫切:
1. 成本:自动化并不一定围绕测试执行,还可以包括测试的准备,log的提取,数据分析等等。将所有的与测试有关的工作逐一列出,然后找到重复的,可以被代码化的部分,评估现有工作成本和自动化成本,寻找到收益最大的工作块并顺序将之代码化。
2. 质量:和成本差不多,只是在评估的时候需要评估的是该工作块现有的质量状况和需求质量间的差异,寻找到差异最多的那个模块,并将所有质量差的模块逐一进行自动化。
3. 时间:和以上两点一样,都需要寻找到与测试有关的所有步骤和工作块,将其中关键路径上,动作最慢,耗时最大的部分进行自动化。
版权声明:本文出自 zeustest 的51Testing软件测试博客:http://www.51testing.com/?15030005
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
最新内容请见作者的GitHub页:http://qaseven.github.io/

自动化测试和测试自动化的区别相关推荐

  1. 自动化测试和测试自动化你分的清楚吗?

    目录 目录 前言 两种自动化测试 为什么测试自动化对连续测试至关重要 使测试自动化成为现实 拥抱连续测试 总结 前言 当我们谈论持续测试,以及持续交付和DevOps时,"自动化"一 ...

  2. 自动化测试和测试开发的区别?培训学哪个更好?

    自动化测试和测试开发是目前测试两个比较热门的方向,但刚入门的同学却不知道它们都是干嘛的,到底该学习哪个方向.今天小千就来给大家介绍一下. 自动化测试 自动化测试是把以人为驱动的测试行为转化为机器执行的 ...

  3. 软件自动化测试成功之道_是什么使测试自动化成功?

    软件自动化测试成功之道 测试是软件开发的一个重要但经常被低估的部分. 从定义上说,测试是具有挑战性的. 如果容易发现错误,那么它们就不会存在. 测试人员必须跳出框框思考,以发现其他人遗漏的错误. 在许 ...

  4. selenium自动化测试_维持Selenium测试自动化的完美方法

    selenium自动化测试 毫无疑问, 自动浏览器测试已改变了软件开发的工作方式. 如果不是Selenium,我们将无法像我们一样使用各种各样的无错误的Web应用程序. 但是有时,甚至IT部门也误解了 ...

  5. selenium自动化测试_Selenium测试可实现有效的测试自动化

    selenium自动化测试 尽管移动应用程序的市场份额有大幅增长,但网络应用程序仍然具有大量的用户基础. 在部署之前,企业正在关注Web应用程序的质量. 这是测试发挥重要作用的地方. 与某些可以自动化 ...

  6. 什么是python自动化测试_python已经自动化了,大家一般用什么测试框架?

    首先我们需要明白自动化测试框架更倾向于一种设计思想 ,这种思想指导工具的使用或者自研开发,并且不是只能使用仅仅一种框架,结合被测系统本身特性一般是选择多种测试框架的组合,来满足测试和设计需求(开发.维 ...

  7. 自动化测试工程师_所以你想成为一名测试自动化工程师

    自动化测试工程师 I see many people and personally have several friends and acquaintances that are interested ...

  8. 人工智能 自动化测试_测试中的AI:第三波自动化

    人工智能 自动化测试 敏捷方法论的发展迫使企业进行创新并以闪电般的速度交付. 在交付周期时间减少的同时,提供积极的用户体验并保持竞争优势所需的技术复杂性也在增加,而我们引入引人注目的创新的速度也在增加 ...

  9. 测试自动化/自动化测试的定义

    我们经常可以听到测试自动化/自动化测试,并且看到英文中有Test Automation, Automated Testing/Test,Automation Test,其实意思都一样,只不过有时需要根 ...

最新文章

  1. php扩展兼容,PHP扩展迁移为PHP7扩展兼容性问题记录,php7兼容性_PHP教程
  2. python可以做什么系统-python什么系统
  3. 旗帜鲜明的反对李彦宏当选院士!
  4. 自定义ArcGIS JavaScript 工具条样式
  5. 为什么大家都在吹捧Python?
  6. 抓localhost包 - rawcap
  7. Dungeon Master——BFS
  8. ajax手册看云,下拉菜单Ajax(1.3.3+)
  9. 电子认证服务许可证企业名单_工信部注销28家企业跨地区增值电信业务经营许可证...
  10. 茅粉又疯狂!“蒂芙尼蓝”茅台炒至8500!
  11. Window Operations
  12. SSM框架中的Mapper.xml文件中的增、删、改、查等操作
  13. c语言love字符怎么打,怎样利用几行简单的c语言代码表白?
  14. php常用字体大小,推荐:PHP编辑器常用的几种字体下载
  15. Java面试单点登录_单点登录面试题
  16. 器件选型--电源电容滤波
  17. itext文本域自动换行_itextpdf生成pdf问题汇总
  18. 通过Vue解决跨域问题(proxy配置代理)
  19. 【VMware】NAT模式、桥接模式、仅主机模式
  20. 51单片机指令系统详解

热门文章

  1. js html保存json,如何在json文件中存储jQuery或javascript变量?
  2. matlab-绘图-直角坐标系
  3. matlab pause
  4. HDLBits 系列(14) Latch and Dff and Edge detect
  5. NAS设置NFS共享便于KODI添加视频的方式
  6. 迭代器、生成器、面向过程编程思想
  7. 查看mysql数据库及表编码格式
  8. 【云栖大会】阿里云生态 开启智能“大航海时代”
  9. FileZilla Server安装配置教程
  10. 如何查看java对象的大小