从方案到用例再谈测试覆盖??改进决定成败
作者:网络转载 发布时间:[ 2011/7/28 13:37:50 ] 推荐标签:
写这篇文章的目的来源于近半年来对高效测试过程的研究与心得。从大型项目测试经理试转到平台部门任部门经,职业规划发生较大转变,也让我更深层次的对整体管理有了新的入的认知与看法。如何做到效率测试呢?测试覆盖是必须要谈到的一个话题。成本、质量、时间是项目管理的三个重要约束,有人曾用经济法则来衡量一个的测试项目。它必定具有以下特点:一、交付周期短;二、一次性交付;三、强调方法。
我们在对超过50家企业的测试人员面试记录研究后发现,从规模在几百人的中小企业还是上万人的跨国公司,其测试体系中的核心部分几乎完全一致。但从终交付的结果数据来看,交付能力却差异距巨大。是什么原因造成一个模子出来的理论其实际效果却千差万别呢?
从咨询公司的一份调查报告来看,大部分企业对基础体系建设工作往往都充满热情。但在实践过程却经常忽视对过程指导方法的梳理与归纳,这种缺失使得基础体现无法有效发挥其实际作用,更多体系被当成摆设存在,被冠以浪费时间、浪费精力的恶名。从研究PMP管理思想中我们发现,西方管理思维与中方管理认知上有着本质区别。从测试管理的角度出发,用例命中率是我们普片关注的关键评估维度。邓小平同志曾用一个形象的比喻来描述这种差异。不管是白猫、黑猫,抓的住老鼠是好猫!中国的项目管理往往不重视方法论的引导,更侧重于实际效果。这里当然不是想攻击某些人的看法,实际效果是我们必须要抓住的重要考核指标。但如果抓到老鼠是好猫,这样导向可能让我们失去很多提升机会。本文的核心是想针对解决方案及管理思想与大家做一次探讨。
现在,我们从传统工作模式引发的问题来思考如何高效的进行测试设计?
首先,来看看我们产品的一些特点和现有的测试设计模式。
产品特点(华为火车版本的特质,短平快,要求快速交付,需求变化大):
1.周期短:3个月一个大版本,火车版本众多;
2.需求多:一个大版本,包含30-90个需求;
3.复杂度高:组件化程度高,要求快速集成;
4.响应快:从需求到设计,平均为周期为2周左右;
5.接口多:与核心网设备均有接口;
6.配置多:定制化需求多;
7.安全性:接入安全系统;
8.质量要求苛刻:万分之一出错概率,海外均是战火纷飞(实施长、威胁大);
传统工作模式:需求规格->多次评审->测试需求->特性需求->测试用例
我们一般采用矩阵管理对原始需求及测试用例进行双向跟踪。当《需求规格说明书》第一次被基线时,测试设计过程组正式启动。测试设计人员通过对《需求规格说明书》多次评审,达到对整体项目需求把控与熟悉。评审过程是交叠或者瀑布的,项目需求渐进明细的,产品目标越发清晰。测试团队常见介入时机是在《需求规格说明书》基线以后。
接着用例设计组根据这些以测试需求作为指导框架提取测试特性。测试特性被有效离散与控制,并有序归纳起来。终的设计者开始编写测试用例,一个用例可能覆盖多个特性,而每个特性将应不同的用例观察点。以此,用例设计阶段告一段落,这种用例设计方法是双向追溯的,需求与用例能较好的结合起来。且如果发生变更,我们便能从容的由复杂业务中梳理出相关特性,并终仅以很小的代价能完成这些看似繁杂的工作。
这个过程看似非常完美,但在使用过程却暴露了一系列问题,甚至有时候会让我们感到沮丧:
首先:设计过程缺乏记录,分析者与设计需要同一人完成,无法由两个组来完成;
其次:语言过于精炼,不利于评审,开发人员难以理解;
后:测试特性过于零碎,难以归纳测试方法,如:同一项目可能存在多个同一类型的测试点;
在这样的背景下,新的决绝方案即是要解决这些问题。在与华为合作的五年之中,我们对精细化管理过程日趋成熟。随着产品团队的不断扩大,组织结构显得尤其重要。
由此,我们要做第一件是规划一个合理的组织结构。将不同水平的测试人员高效的组织起来,使技能分层达达到高度协作:
组织结构:DSE?>DTE->TSE->PM->TL->TE
这里需要注意几个角色:
DSE:这个角色主要是负责项目整体技术方案(包括:测试点分析、关键技术测试难点分析)。
DTE:这个角色意在辅助开发人员进行单元测试,他们将基本的问题封堵在内部版本转测试之前。
TSE:这个角色需要具有3年以上设计人员承担,成员数量随项目大小而进行规划,人员必须各有所长,一般为虚拟矩阵(可能来自不同项目人员组成);
第二步,管理模式改良,以解决设计过程缺乏记录的问题。
改良式的矩阵式管理,仍然延续双向追踪模式。加入了一些新的过程组以进行改良。我们来看看这个模式的工作原理。
首先,在需求管理模板改良:增加原始需求、测试需求、需求变更统一变更模板。该模板流转于整体项目管理过程中。开发、测试、QA对同一模板进行维护,需求一旦变更立即对该表更新。该模板的变更,改变了以前多表维护、数据混乱的局面。
其次,在需求评审阶段进行改良:增加了DSE及TSE两个角色,对需求的算法及实现全程跟踪。测试人员全程参与需求与设计过程,对算法及设计方案进行深度评估。DSE负责组织开发人员进行讲解,TSE负责安排测试人员进行跟进。测试方案组跟踪全程需求修改,并及时调整测试方案。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11