关闭

大师与程序员之间关于测试覆盖率的对话

发表于:2013-1-04 10:03

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Simon    来源:51Testing软件测试网采编

  在《谈谈测试覆盖率文章中说到了测试覆盖率与代码质量的关系,纠正了覆盖率高就质量好的简单论断。

  今天我们从另外一个视角来说说测试及覆盖率。当然,这里的测试都是指开发者自己做的自动化测试,不是测试人员的验收测试。

  一天早上,程序员A走到大师座位上问:

  A:“我已经写好了部分单元测试代码,请问我该达到多少测试覆盖率?”

  大师:“不要太在意覆盖率,把测试用例设计好,测试代码写好就可以了。”

  程序员A带着满足的微笑离开了。

  过了几天,程序员B又跑到大师的座位上问同一个问题,大师指着正在沸腾的水说:

  “用这个水煮饭,该放多少粒米?”

  程序员B一脸迷茫,说:

  “这个我怎么能清楚的告诉你?这个问题依赖于有多少人吃饭,他们的饥饿程度,是否有其他的辅助食物,你有多少米等。”

  大师:“你说的太对了”。

  程序员B也带着满足的微笑离开了。

  又过了几天,程序员C也找到大师的座位上问这个问题。

  大师用拳头捶着桌子坚定地回答:“绝对不能少于80%的覆盖率”。

  程序员C也带着满足的微笑离开了。

  这时候,坐在大师傍边的一位菜鸟程序员D迷茫了,忍不住问大师:

  “大师,我听到你回答三个人同样一个问题,但是答案却是完全不一样,为什么呢?”

  大师从椅子上站起来说:

  “走,去喝一杯茶,让我慢慢讲你听。”

  当他们的茶杯中的新茶冒出热气后,大师说:

  “程序员A是新手,且刚开始做测试。当前他有很多没有经过测试的代码,还有很长的路要走;这个时候要求他达到一定的测试覆盖率目标,会使他的情绪变的很沮丧且毫无意义。他现在要做的就是写一些测试代码并执行,慢慢的他会考虑到覆盖率的。”

  “程序员B,很有经验,写过不少代码,包括测试代码。当我反问他要往沸腾的水里面放多少粒米的时候,我帮助他意识到了测试代码的数量依赖很多因素,且他比我更了解有哪些因素,因为这毕竟使他的代码。这个问题并没有一个简单的,唯一的答案。我相信他能够知道该怎么做”

  菜鸟D说:“我知道了,这个问题没有简单的,唯一的答案,。但是我不明白,你为什么给程序员C一个简单的唯一的答案呢?”

  大师开怀大笑,说:

  “程序员C只想要一个简单的唯一的答案,虽然不存在简单的唯一的答案,要是没有这个明确的答案他就不能继续工作。”

  大师说完后,菜鸟就什么都没说,他们静静地喝着茶。

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • oxygen001
    2013-1-05 12:19:25

    有意思,测试有没有点有趣的故事?

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号