阅读:0
听报道
这一次讲讲我和厕所那些不得不说的往事。前方高能,大家准备好了啊!深吸一口气,我要开讲了......
测试小分队做的另一件改变谷歌文化的事是“马上测”(马桶上的测试)系列宣传:每个星期,我歌各个厕所的蹲坑前都会贴上一张新的传单,介绍经典或是最新的测试技术。这个系列到今天已经运作了差不多十年了。很多人可能不知道,这完全是一个草根行为,从组织、写稿、编辑到张贴都是由关心公司代码质量的志愿者利用自己的20%时间完成。Mike Bland有一篇长文介绍这个系列的历史和八卦,内容非常详尽,强烈推荐对我歌文化感兴趣的同学仔细阅读。
简单地说,2006年初,队长Bharat Mediratta在一次小分队会议上开玩笑说我们应该在厕所里贴传单宣传测试技术,大家一阵爆笑之后,当成行为艺术在会议记录里写下了这一条。没想到一位伦敦的同事Joe Walnes决定真干(难道因为他是轮蹲来的?),于是这个系列就开始搞起来了。刚开始有的同学还不太习惯,不知道这是弄啥咧。久之这个活动就形成制度了,基本上每周一期按时推出,到现在有400多期了,估计当初大家都想不到会坚持得这么久。后来这一形式甚至传播到了外司。我看到过网上流出的某公司高仿版“马桶上的测试”,内容是介绍gMock(我领头做的一个和gTest互补的C++测试工具)的用法,呵呵。
2007年,我推出gMock的时候,又借助“马桶上的测试”做推广工作。因为同样形式的传单写多了感觉太单调,我想在形式上有个突破,但具体怎么搞一时也没啥好主意。某天突发奇想,为啥不用漫画的形式呢?肯定吸睛啊!就是有一点小问题:虽然我小学三年级参加过美术兴趣小组,这么多年全还给图画老师了,要我画画除了王麻子跳井跟丁老头我也不会啊!那有没有不会画画也能搞的美术呢?对了,我司八年多以后不是要改名为字母表吗?咱可以用字符来拼图啊!
大方向定下来后,执行就好办了。经过反复试验,我生造出了两个卡通形象:gTest的吉祥物,一个叫悠尼(Uni)的尖头独眼机器人码工,还有gMock的代言人,一只名叫莫卡(Moka)的程序猿。虽然很山寨,还算喜感。他们两个前后出现在两期“马上测”中,为发展gMock用户作出了贡献。
下面这张是我为第84期“马上测”写的文章《如何温柔地测试老代码(Testing Legacy Code Gently)》配的插图。这一期讲的是如何用gMock让一个年老失修的系统逐渐变得可以测试。故事设定的场景是悠尼的飞碟因为没有好好测试,被摔坏了,莫卡给他支招,最后悠尼新技能get。对话如下:
1. 莫卡:你今天看起来不太爽啊。咋搞的,悠尼?
悠尼:逊!我新造的飞碟呀,摔坏鸟!呜呜呜。。。
2. 莫卡:忒背了!诶你不是测过了吗?
悠尼:测倒是测了,没测紧急着陆那块啊!那个俺不会。。。
3. 莫卡:我懂了!你可以用“依赖注入术”啊,模拟紧急情况轻松搞定!
悠尼:测倒是测了,没测紧急着陆那块啊!那个俺不会。。。
3. 莫卡:我懂了!你可以用“依赖注入术”啊,模拟紧急情况轻松搞定!
悠尼:那俺岂不是要给系统加个新接口?改动太大我好怕!
4. 莫卡:嗯,我想想。。。要不你用模拟回调函数试试?这个改动小,只要如此这般便好:。。。
悠尼:我稀饭!欧耶,莫卡!

接下来这张是第96期文章《测试结果早知道(Expect Faster Turn-Arounds)》的插图。他们说的是:
1. 电脑:哔哔,哔哔,哔哔。。。
悠尼:额滴神位(Holy bit)!一大波测试挂鸟!不赶紧修好天会塌了呀!
2. (一小时后)悠尼:啊~~!编译这么慢啊,我不要活了啊~~!
3. 莫卡:每次编译只修一个断言太没效率了吧?一次多改几个啊!
悠尼:哦?咋搞?
4. 莫卡:用EXPECT,不要用ASSERT。这样一个测试就可以同时报多个错啦。
悠尼:太赞了!


话题:
0
推荐
财新博客版权声明:财新博客所发布文章及图片之版权属博主本人及/或相关权利人所有,未经博主及/或相关权利人单独授权,任何网站、平面媒体不得予以转载。财新网对相关媒体的网站信息内容转载授权并不包括财新博客的文章及图片。博客文章均为作者个人观点,不代表财新网的立场和观点。