我代码写完了,QA可以测了。

2020/04/05 TDD 共 847 字,约 3 分钟
拔菜集

我们经常说一些团队很乱,不正规。表面上说的是流程,其实是团队的三观。 三观不正的团队很难走远。今天以测试为例,说说我观察的几种三观,自低到高分别是:流氓级,码农级,懵懂级,入门级,工匠级。

01 流氓级

典型语录

「我代码写完了,QA可以测了。」

解读

公司招程序员进来是为了做出可用的软件,不是做出半成品。如果天经地义地让QA测自己的半成品,是不是把你的工资分一半给 QA?

现实中流氓的往往不是员工,而是管理者。这种做法或三观都是管理者制定的,程序员也是受害者,一不小心成了流氓。

正确的三观

开发(任何角色)的职责是把事情做好,如果为此你需要测试,那就去测试吧。

02 码农级

典型语录

「我做完了,但是还没测。」

解读

你去买房,交房时开发商说:「房子盖好了,但是能不能住人,我们还没检查。」你窝火吗?

正确的三观

测试和开发不是两件事,测试活动是开发过程的一部分。没有「开发完了,但是没有测试」这种说法,那就叫「没有开发完」。

03 懵懂级

典型语录

「我做完了也测了,需要补一些单元测试。」

解读

这种补单元测试的做法,基本上是因为公司要求写单元测试。想想,筑墙的师傅会先筑好墙,再来用线坠测试它直不直吗?

说这种人懵懂是因为他们以为单元测试只是测试,不管代码写的多长,都硬是写个单元测试把生产代码调用一遍,不出错就行了;有Assertion就算厉害了;至于逻辑覆盖率,那是啥?

正确的三观

要写单元测试,首先要让代码要可测。可测很难,所以单元测试不是测试,它首先是设计。

04 入门级

典型语录

「这些xx场景不用测了,你帮我看看yy情况下有没有问题。」

解读

这种程序员已经有了 Test First 的思路,他们对自己交付的东西心里很有数,知道哪些场景已经被单元测试覆盖,哪些没有。

没有覆盖到的逻辑,他们要么自己测,要么请求QA帮忙测。他们还会跟QA讨论或者建议这个逻辑该用「测试金字塔」的哪一层来测。

正确的三观

不要总是让QA告诉自己有什么bug,应该告诉QA有什么bug。

05 工匠级

留个白,你心目中的工匠级程序员或团队是如何对待测试的呢?欢迎留言。

文档信息

Search

    Table of Contents