HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

没有自动化测试的应用应该如何测试?

  • 2010-07-17
  • 本文字数:1263 字

    阅读完需:约 4 分钟

敏捷推荐围绕应用建立足够的单元测试和验收测试,以构建足够强壮的测试套件。然而,实际情况是:不是所有的应用都有配套的测试套件。敏捷测试讨论组中有一个有趣的讨论,提到如何为没有任何自动化测试的应用进行测试,成员们提出了多种方法。

Asad Safari 发起了这个讨论,他说他的一个应用没有任何测试,团队中的开发人员不熟悉单元测试,距离截止日期也只有3 个星期的时间供团队测试。他希望得到一些建议,指导如何在这样的约束条件下测试。

Phlip 回应道:他曾多次处于类似环境,并推荐以下建议:

  • 加入一个可选模块,能够通过任意或是指定的输入来驱动应用;
  • 向程序中加入日志,把错误信息和断言存入日志文件中;
  • 编写一个大单元测试,调用你所有的程序,提供前面提到的输入,然后梳理日志;
  • 编写一个大的断言,在其中指出日志应该没有任何错误;
  • 现在开始一个一个排错。每次去掉一个错误,去掉对它的异常处理。

Phlip 指明:在这个大测试保护伞之下,如果时间允许,团队可以开始编写小规模的、目的更明确的测试。他还指出:虽然团队可以在接下来的三个星期等待上面的做法产生效果,编写和运行更小的单元测试应该马上开始

Adam Sroka 同意 Phlip 的建议,并补充道:

没错,很多团队碰到质量低劣的代码时,会放慢速度,产出的价值也会减少,而这对于质量没有任何好处。我们需要更实用的解决方案……如果没有从一开始就加入测试,那么就很难完全把测试做好,这是没问题的。但是就此认为测试没有价值,这是错误的看法。测试虽然不完美,但仍有其价值所在。

Brian Spears 却没有被他们说服,他认为敏捷不是魔法,在三周时间内恐怕没法产生什么好解决方案。他说:

敏捷不是魔法,对这种紧急情况的解决方案,如果有的话,就是要投入很多很多时间,这明显不是敏捷的做法。

Adam 反对这个看法,指出有很多团队如果进入类似境况,都采用了敏捷。这是团队变得有实效的机会,也是让软件变得更好的启动之旅。

Annette 认为:这种情况最应该做的就是用很多很多时间做手工测试,因为到了这个阶段,自动化测试就太费时间了。推荐从重要的和与收入相关的功能开始测试。Annette 也推荐了Lisa Crispin 和Janet Gregory 合著的 Agile Testing 一书。

Charles Bradley 提出了类似的建议,不过他指出还要获得一个有条件的承诺。他说:

你的时间很有限,所以从业务角度来看,将 ROI 最大化是最佳选择。就使出吃奶的劲头做手工测试吧!但是要从你的老板那里得到承诺:他们无论如何也不会再让你的团队这么做了……他们应该先规划好时间和金钱完成自动化测试……着手下一个发布工作时就应该马上开始,甚至更早,比如开始修复当前版本的 bug 时。

因此,编写完整的测试套件,也许不是最适合当前情形的做法,团队最好开始手工测试。而这并不能削弱在一有机会时就编写适当的测试套件的做法。正如 Jonathan Rasmusson 指出的:

你所能做的就是修复 bug,然后在上线之前尽一切可能完成手工测试。这就是你到这个时候还能做的事情。更大、更重要的问题,是你在三周截止日期到达之后要做什么。

查看英文原文: Testing Techniques for Applications With Zero Tests

2010-07-17 23:442727
用户头像

发布了 479 篇内容, 共 158.0 次阅读, 收获喜欢 49 次。

关注

评论

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

这,就是大模型时代的生产力!

飞桨PaddlePaddle

人工智能 paddle 百度飞桨 文心大模型 WAVE SUMMIT

三生ONE物,无限可能|博睿数据上市三周年!

博睿数据

可观测性 智能运维 One 上市3周年

浅析分布式系统之体系结构 基本属性--故障

snlfsnef

WIFI7 M.2 moudle-QCN9274+QCN6274-Pinnacle of WiFi field-support-MU-MIMO-OFDMA-TWT technology

wifi6-yiyi

6G WiFi 7

ThreadLocal不过如此

java易二三

Java 程序员 计算机

爆款升级,价格喜人,京东超品日即将上新小度青禾学习手机5G版

新消费日报

消息推送:精准推送,提升运营效果,增添平台活力

MobTech袤博科技

前端 前端开发 消息推送 sdk

7种创建方式,带你理解Java的单例模式

华为云开发者联盟

Java 开发 华为云 华为云开发者联盟 企业号 8 月 PK 榜

校源行丨开放原子开源基金会赴福州走访交流

开放原子开源基金会

开源

API 自动化测试的佳实践

Apifox

软件测试 自动化测试 API测试 API开发 测试自动化工具

Java如何生成随机数?要不要了解一下!

java易二三

Java 程序员 random 计算机

奖金丰厚 等你来拿!第六届开源创新大赛飞桨赛道下半场来啦

飞桨PaddlePaddle

人工智能 百度飞桨

使用tidb-toolkit批量删除/更新数据

TiDB 社区干货传送门

性能调优 管理与运维 应用适配

我和 TiDB 的故事 | 远近高低各不同

TiDB 社区干货传送门

人物访谈 社区活动

TiDB 多集群告警监控-中章-融合多集群 Grafana

TiDB 社区干货传送门

监控 集群管理 管理与运维 6.x 实践

PoseiSwap 更新质押系统,并将在 8 月18 日开启“Trident ”快照

股市老人

Vue 框架提升加载速度的经验分享

FinClip

SpringBoot 太强了,这些优势你需要了解

java易二三

Java 程序员 Spring Boot 后端 计算机

开放原子开源基金会TOC(技术监督委员会)第八十次全体会议

开放原子开源基金会

开源

java——反射与注解

java易二三

Java 程序员 计算机 API 科技

PoseiSwap 更新质押系统,并将在 8 月18 日开启“Trident ”快照

鳄鱼视界

TiDB Hackathon 2023 获奖名单新鲜出炉,来看一下都有哪些特别惊喜的项目吧!

TiDB 社区干货传送门

PoseiSwap 更新质押系统,并将在 8 月18 日开启“Trident ”快照

威廉META

简单理解 TiDB Serverless branching

TiDB 社区干货传送门

数据库前沿趋势

Oracle-TiDB迁移-生僻字乱码问题

TiDB 社区干货传送门

迁移 实践案例 应用适配

基于 Vercel & TiDB Serverless 的 chatbot

TiDB 社区干货传送门

社区活动

PCTA 认证考试高分通过经验分享

TiDB 社区干货传送门

社区活动 6.x 实践

TiDB 源码编译之 TiFlash 篇

TiDB 社区干货传送门

新版本/特性解读 HTAP 场景实践 7.x 实践

没有自动化测试的应用应该如何测试?_研发效能_Vikas Hazrati_InfoQ精选文章