《C++代码整洁之道:C++17 可持续软件开发模式实践》 —2.5.11 测试必须快速执行

举报
华章计算机 发表于 2020/02/09 14:12:42 2020/02/09
【摘要】 本节书摘来自华章计算机《C++代码整洁之道:C++17 可持续软件开发模式实践》 一书中第2章,第2.5.11节,作者是[德]斯蒂芬·罗斯(Stephan Roth),连少华 郭发阳 陈涛 译。

2.5.11 测试必须快速执行

在大型项目中,单元测试的量级早晚会达到上千条。这在软件质量保证方面是有促进作用的。但比较尴尬的是,测试人员也许直到提交代码的时候才会执行它们,因为这项工作耗费的时间过于漫长。

很显然,测试花费的时间和团队的生产力有很大的关系。如果运行单元测试需要花费15分钟、30分钟甚至更多,那么开发人员的工作进度就会由于长时间等待测试结果而受到影响。即使执行每个单元测试平均“只”需要几秒钟,那么执行完1000个测试用例也需要超过8分钟。这就意味着如果这些测试案例每天需要执行10次的话,那么将有1.5小时的时间花在等待上。结果就是,开发人员会减少单元测试的次数。

我的建议是:测试必须快速执行!单元测试必须为开发者建立一套快速反馈机制。一个大型项目的所有单元测试的执行时间最多花费3分钟,当然,越少越好。在开发过程中,为了更快地执行本地的测试用例,测试框架要提供一种简便的方法来暂时关闭不相关的测试组。

毫无疑问,在最终产品发布前,测试平台上的所有测试用例都应该执行到。一旦测试用例执行失败,应当立即通知开发团队。可以通过电子邮件提醒,或在显眼的地方标记出来(比如,在墙上的显示屏上展示出来,或者通过测试平台控制指示灯提醒开发人员)。即使只有一个测试用例不通过,也不能发布产品!


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。