软件测试的金字塔体系可以基于上一节的描述进行扩充,得到如下结构,更接近于一串神秘的数字。

    
    后,总结一下软件测试的5个要素。
   
    1)  质量:软件质量是软件测试的目标,也是软件测试工作的中心,一切从质量出发,也是一切从客户需求出发。任何违背质量的东西都是问题,测试是要找出这些问题。
   
    2)  人员:人是决定的因素,测试人员的态度、素质、能力决定着测试的效果,对测试产品的质量也有很大的影响。测试人员因素包括测试组织结构、角色和责任的定义。
   
    3)  技术:软件测试技术,包括方法、工具。
   
    4)  资源:主要是指测试环境中所需要的硬件设备、网络环境,甚至包括测试数据。另外一个重要因素是测试时间,时间也是测试的资源,但测试人员不能看做资源,每个人的能力千差万别,不同的测试人员担任不同的角色,不能相互代替。这也是软件图书的经典之作??《人件》[1]的作者反对将人作为资源对待的原因。
   
    5)  流程:从测试计划和测试用例的创建、评审到测试的执行、报告,设定每个阶段的进出标准。
   
    5个工作面
   
    基于软件测试金字塔的构成,我们好好研究其5个工作面,如图1-3所示。

     
    1)质量-人员-技术:团队建设,包括人员的招聘、培训、考核等。
   
    2)质量-人员-资源:成本管理,人员和软硬件资源都是测试的投入,但同时必须将人和软硬件资源区别对待,不要将人也作为软硬件资源那样处理,否则会带来较多的问题。
   
    3)质量-技术-流程:技术和流程结合起来是一种测试架构或测试框架,通过技术,将流程融入系统或工具中,流程的执行才能稳定、有效。技术通过框架固化,技术才能发挥大效益。
   
    4)质量-流程-资源:基础设施,构建测试环境,将测试建立在坚固、流程的基础设施之上。
   
    5)人员-技术-流程-资源:项目管理,在一定的质量标准下,如何平衡这些要素、如何获得大的生产力,是软件测试项目管理的主要任务。