《C++代码整洁之道:C++17 可持续软件开发模式实践》 —2.5.11 测试必须快速执行
【摘要】 本节书摘来自华章计算机《C++代码整洁之道:C++17 可持续软件开发模式实践》 一书中第2章,第2.5.11节,作者是[德]斯蒂芬·罗斯(Stephan Roth),连少华 郭发阳 陈涛 译。
2.5.11 测试必须快速执行
在大型项目中,单元测试的量级早晚会达到上千条。这在软件质量保证方面是有促进作用的。但比较尴尬的是,测试人员也许直到提交代码的时候才会执行它们,因为这项工作耗费的时间过于漫长。
很显然,测试花费的时间和团队的生产力有很大的关系。如果运行单元测试需要花费15分钟、30分钟甚至更多,那么开发人员的工作进度就会由于长时间等待测试结果而受到影响。即使执行每个单元测试平均“只”需要几秒钟,那么执行完1000个测试用例也需要超过8分钟。这就意味着如果这些测试案例每天需要执行10次的话,那么将有1.5小时的时间花在等待上。结果就是,开发人员会减少单元测试的次数。
我的建议是:测试必须快速执行!单元测试必须为开发者建立一套快速反馈机制。一个大型项目的所有单元测试的执行时间最多花费3分钟,当然,越少越好。在开发过程中,为了更快地执行本地的测试用例,测试框架要提供一种简便的方法来暂时关闭不相关的测试组。
毫无疑问,在最终产品发布前,测试平台上的所有测试用例都应该执行到。一旦测试用例执行失败,应当立即通知开发团队。可以通过电子邮件提醒,或在显眼的地方标记出来(比如,在墙上的显示屏上展示出来,或者通过测试平台控制指示灯提醒开发人员)。即使只有一个测试用例不通过,也不能发布产品!
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)