【落叶355】《测试路上你问我答》(100)自动化测试的意义到底在哪里?

文/秋之川

【目录】

这是《落叶》文集里第 355 片落叶,希望你能喜欢,不为别的,只为这份坚持。

【背景】

最近有同事在面试的时候被问及一个问题,其实也是近些时候,网络上讨论也比较多的一个话题,自动化测试的意义到底在哪里?

【你问】

自动化测试的意义到底在哪里?

【我答】

每样事物的产生都是因为需求的产生,我个人对于自动化测试的产生原因的理解,跟工厂里的质检应该类似,当软件测试工程师这个职业刚刚产生的时候,就像工厂里的质检员,都是通过手工和感官去检查产品的质量,慢慢地,随着产品的生产规模扩大和速度的加快,这种纯手工的测试和质检就暴露出来一些问题:

  • 人力成本的增加,因为需要更多的质检员和测试工程师
  • 效率的瓶颈,因为生产速度远远超过手工质检和测试的速度
  • 人为错误率的上升,因为工作量的增加和持续时间的增加,导致人员疲劳或惯性思维,也包括投机取巧的一些行为

而自动化测试,也就像工厂里的自动化质检一样,在这个时候应运而生了,它们的产生就是为了解决上述三个主要问题的:

  • 当检测任务增加的时候,人力不可能一直连轴转,所以就需要增加人力来三班倒,但自动化系统却可以不停地运行
  • 自动化系统的执行效率远超手工效率
  • 系统不会因为连续地运行而疲劳,所以也就不会疲劳而犯错,更不会有什么惯性思维和偷懒的行为

现如今,自动化测试工具和框架多的让你都能挑花了眼,测试开发工程师或自动化测试工程师的岗位需求也比前些年多了很多,不管你是在做什么类型的产品测试,如果没用过几种自动化测试框架或工具,是不是感觉都不好意思开口?那为什么现在反而越来越多的人又开始讨论自动化存在的意义了呢?

我的理解是虽然自动化测试这个概念被热炒了很多年,可是真正能把自动化测试真正融合到软件研发体系里的公司,并没有太多,我觉得导致这种结果的原因其实可以说就一个:投入产出比太低。

我大概从2005年开始第一次接触到自动化测试的概念,那时候还是 Selenium 1.0,虽然我没有主攻自动化测试这个方向,但是因为很多原因,也参与了自动化测试在项目中的试点,在公司的实施和推行,一直以来也不断地在看项目里和项目外的人将很多新的自动化测试工具带进来又带出去。

有的是管理层看不到最终会带来多大的效率提升和回报,所以前期就不想投入相应的人力和物力。

有的是管理层其实也支持,但迫于项目工期或产品发布等更为重要的目标,导致不能投入百分之百的人力去开发,所以导致迟迟不能落地,最终也就不了了之。

还有部分公司就是为了自动化而自动化,并不清楚自己到底需不需要自动化,或者什么地方最需要自动化,就是觉得,既然其他公司都搞自动化了,那我们也必须要启动自动化计划。

我还见过因为自动化测试框架因为版本的升级,导致几千个脚本被废弃,导致几十个测试工程师半年多的辛勤劳动成果被浪费,导致公司的测试工程师一度极其抵触自动化测试的任何任务。

还有很多其他的场景,日积月累地,让很多公司和很多人慢慢地对自动化产生了疲劳感,自然也就有了质疑的声音和迷惑的问题。

我个人的观点是,要想明白自动化测试的意义,你得先把测试两个字拿掉,再来看自动化的意义在哪里?

我们要将自动化的应用领域扩展到我们整个产品研发流程,或者说发散到你的整个工作范围,将其中手工重复度较高的、人为容易犯错的、较为机械化的工作事项,都给自动化了,将执行这类工作的人力释放出来,去做有创造性的、复杂度高的、有成长性的工作。这就是我认为的自动化的意义。

就拿我们接触较多的互联网产品的团队,不要再局限于什么 Android 自动化测试、iOS 自动化测试、接口自动化测试这些范畴了,而应该多去研究一下,开发过程中哪些环节可以被自动化,比如单元测试、构建版本包、发布包部署、错误日志检查、异常预警、现网运营配置的检查、运维数据的纠错等等,这些都是可以用自动化工具、脚本或框架来解决的,这些都是有意义的研究范围。

最后,再说个更生活化的例子,就像我现在在写这篇文章,我会在简书写好,发布出去,然后,我会同步在去大鱼号、微信订阅号等自媒体平台发布一下,其实这个发布过程就是一个我每天都要重复去做的事情,如果我能将这件事情给自动化了,那每天是不是又给自己节省了将近20分钟的时间呢?你说这有没有意义呢?

《测试路上你问我答》里的 Q&A 100,如果是你要的,甚好!如果不是,你问,我答!

作者简介:14 年测试 + 11 年项目管理 + 11 年团队管理 = 一个测试老兵

【目录】

最后编辑于
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容

  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 21,955评论 7 278
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 6,721评论 5 100
  • 总结一下知乎上几位答主的答案 自动化测试和手动测试都是不可缺少的,两者相辅相成 无论是自动化测试还是手工测试,其核...
    抓兔子的猫阅读 5,853评论 2 10
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 9,189评论 2 126
  • 韩沛,陕西省美朮家协会会员,陕西省山水画研究会理事,渭南市山水画研究会副主席。 ‘ 1丨l
    林泉问道阅读 3,367评论 2 3