工作坊题目
上周软件平台安排了1天的头脑风暴,一直想跟大家探讨用例的覆盖度问题,因此想着弄个工作坊吧,题目是:如何提升用例的质量和覆盖度。
先说下测试金字塔
什么是测试金字塔?迈克·科恩在他的着作“ 与敏捷成功”一书中提出了这个概念。这是一个隐喻,告诉你思考不同层次的测试。它还会告诉你在每个图层上要做多少测试。
我们暂不讨论这个分层是否合理,从这个金字塔,我们可以得出结论,在项目临近发布才开始测试并发现缺陷,这样修复缺陷的成本就会很高,项目的进度也会很不确定。所以,就开发阶段来说,如果测试分层,在不同的开发阶段都进行测试,能很大程度上缓解这些问题。
我对迈克·科恩的金字塔做了一下改良,从上到下分为:探索性测试、功能测试、集成测试/自动化测试、单元测试。下面2层是很重要的,决定着最终的交付质量。
很多公司迫于业务的压力,没有投入足够的时间来做这块的建设,导致问题频发,每天忙于救火,陷入恶性循环。
用例设计的输入
这是研发V模型,相信大家都很熟悉,画这个图不是为了说明研发V模型的流程是什么,而是想引导大家做下思考,如果我们没有聚焦于先把左边做好,右边真的能达到我们的预期吗?
如何保证左边的输入是有效的?抓好过程环节,确保需求分析、系统设计、详细设计的输出质量,是提升功能测试、集成测试、单元测试用例质量的一个基本保障。
找找根因
用例覆盖不全都有哪些原因呢?我让各小组用鱼骨图法进行分析,找出几个问题点并进行穷举。PJM、研发、QA都站在各自的角度思考如何优化,3个小组讨论还是很激烈的,最终每个小组都列出了自己的鱼骨图。
小结
通过这次工作坊,和大家进行了深度的探讨,我自己收获也挺大的。
首先,在思想上团队统一共识,用例大家一起共建。用例如何更好的分层分级,是质量构建的重要要素。
其次,在目标上团队更加聚焦,提升用例的有效性和质量是部门的重中之重,每个人都要去思考,并补上自己的短板。
总之,2021年一起努力!
简介
基哥,座标厦门,目前专注运维架构学习,DevOps的落地实践。欢迎添加我的微信号(hongdiji)一起学习交流。