QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

该手工测试还是自动测试?

  • 2007-04-22
  • 本文字数:682 字

    阅读完需:约 2 分钟

自动测试的概念炙手可热,但它能代表一切吗?微软的一名测试技术领导(Test Technical Lead)Michael 问道:“你怎么才能知道你到底是把自动化进行得恰如其分,还是行之过甚了?

自动化测试的用例非常容易。稍微花点精力,我们就可以以固定频率对代码进行回归测试,而很少或者根本不需要开发人员介入。然而,和大多数技术一样,并不是所有时候它都按照你的计划工作。

自动测试生来就是用脚本写成的,而不是探索性的。即便我们使用的是一个引入了所有可能情况的自动测试组合,我们的测试也只能在它们覆盖的地方游刃有余,但 对于其它没有涵盖到的地方,它们就鞭长莫及了。如果出现了哪些没有预料到的情况,那么它们很可能就挂掉了,而且即使它们能够从这些情况中恢复过来,它们还 是无法停止正在处理的任务并检查没有预料到的情况。另外,别忘了要保持测试运行的维护,但这个过程并不能帮你找到程序中的缺陷。那么,你还有时间使用你的 程序吗?

Michael 接着讨论了手工测试优缺点,包括探索式测试的涵盖度和无法在每次构建之后进行完整的测试。

另外一种极端的方式是不对任何东西进行自动测试。在这种情况下,每个测试用例都是由人使用鼠标和键盘手动执行的。这种方式能带来显而易见的回报:每个测试 都会是探索性的。整个产品的方方面面都很可能被完全涵盖。如果出现任何意外问题,很容易就能跟进并处理。我们不需要进行任何维护来保证测试用例与应用程序 的变更保持一致,每个人都在不断使用着应用程序。太美妙了,不是吗?

最后,他提出了一个问题:“对于我来说,很显而易见将所有测试都自动化是不切实际的,反之亦然。目前为止我还没有找到最合适的平衡点。你呢?”

2007-04-22 00:001114
用户头像

发布了 117 篇内容, 共 17.2 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

Java并发编程系列——线程

孙苏勇

Java 并发编程 线程

聊聊苹果公司技术部门的宫斗和冷战

赵钰莹

程序员 外包 apple

世界知识产权日碎碎念

Yin

成长 随笔 知识产权

最近的一些人生感悟

小智

人生 哲学

程序员5分钟:你了解32位带符号的整型吗?

顾仲贤

程序员

程序员都应该了解的运维知识经验

松花皮蛋me

DevOps 分布式 运维

克制文章长度

changyou

漫谈哲学与编程

keelii

编程 哲学

知乎开发了一个搜索引擎

红泥

搜索引擎 百度 知乎

敏捷开发 | 张三与需求管理

易成研发中心

敏捷开发 需求管理

在谈判中,你有哪些属于自己的独特的方法和技巧?

Yolanda

除了负载均衡的算法,你还应该知道这些

松花皮蛋me

Java 负载均衡 分布式

程序员陪娃漫画系列——看医生

孙苏勇

程序员 生活 陪伴 漫画

我为什么选择infoq写作平台

三爻

「超级右键」

非著名程序员

macos 程序员 效率工具 软件 Mac

很不幸,自动化测试永远只能是必要非充分条件

刘华Kenneth

DevOps 敏捷 自动化 测试 金字塔

如何阅读源码?

武培轩

Java 源码 面试 进阶 后端

回"疫"录(3):让人怀念的普通一天

小天同学

疫情 回忆录 现实纪录 纪实

微信朋友圈为什么没有阅读数?

彭宏豪95

微信 产品 产品设计

决定我们认知深度的究竟是什么?

石君

深度思考 方法论 连接

前端如何搞监控总结篇

大前端洞见

大前端 监控 全链路监控

爱他,就让他走?

Selina

团队管理 领导力 团队协作

别总说CMS、G1,该聊聊ZGC了

猿人谷

CMS G1 ZGC JVM

Golang 真的好用吗?

极客时间

编程语言 Go 语言

随手记备忘录的好习惯

changyou

加班能解决交付的期望么?

拖地先生

项目管理 领导力 管理 时间管理

程序员陪娃漫画系列——修龙头

孙苏勇

程序员 生活 陪伴 漫画

基于Kubernetes的多云和混合云

倪朋飞

云计算 架构 Kubernetes 微服务 Service Mesh

程序员5分钟:你的程序占用了多少内存?

顾仲贤

程序员

Java并发编程系列插曲——对象的内存结构

孙苏勇

Java 内存模型 面向对象 ClassLayout

小论互联网项目管理

南方

项目管理 互联网 个人成长 碧海潮生曲

该手工测试还是自动测试?_研发效能_Jonathan Allen_InfoQ精选文章