设计测试自动化的技术框架,主持重要的测试工具的研究、评估、设计。

  参与系统部署的设计。

  参与新技术的评估和引进。

  帮助改进测试流程、提高测试效率。

  测试架构师通过上述技术活动,帮助测试项目、测试团队提高测试效率和质量。为了更好地理解测试架构师的职责,在这里,将测试架构师和软件开发架构师、测试经理进行比较,如表2-1、表2-2所示。

  表2-1  测试架构师和软件开发架构师的比较

测试架构师

软件开发架构师

目标

①提高测试的效率和质量
②提高系统的可测试性,特别是非功能特性的可测试性

满足系统非功能特性的要求,如完成高性能、高可靠性和高安全性的系统设计

主要工作

设计测试平台

设计软件产品的系统架构

关注

产品的测试过程

产品的研发过程

影响范围

测试社区、开发团队

开发社区、测试团队

技术范围

①系统架构设计模式、自动化技术、建模技术、测试用例设计技术等
②测试模型、方法、技术、工具等各方面创新

①系统架构设计模式
②面向对象的需求分析、设计和编程等全面技术能力
③熟练使用软件开发平台(如Eclipse)
④的编程技术及其他开发技术

能力

①足够的技术前瞻能力
②足够的影响力
③掌握软件系统架构设计知识
④深刻理解测试流程
⑤精通测试技术、方法

①掌握软件系统架构设计知识
②掌握一类以上软件开发技术
③精通一种以上开发语言


  表2-2  测试架构师和测试经理的比较

测试架构师

测试经理

目标

①提高测试的效率和质量
②系统的可测试性,特别是非功能特性的可测试性

①提高测试的效率和质量
②不断改进测试流程
③加强团队建设,满足组织发展的需求

主要工作

①设计测试平台,包括自动化测试框架
②确定测试方法和测试策略

①测试团队的管理
②测试项目的管理,主要包括计划、人员安排和进度监控等

责任、决策范围

①测试方法的有效性
②技术解决方案,如自动化测试框架的设计与实施
③测试技术规范,包括测试覆盖率衡量
④从技术角度来帮助团队理解架构
⑤团队的技术发展之路

①使客户的价值大化
②团队的能力和绩效
③项目的结果,特别是软件产品质量评估结果
④事先定义的质量标准
⑤和其他团队的沟通、协调
⑥非技术问题,包括测试资源调度、项目里程碑确定等

关注

技术储备、技术问题和发展趋势

测试过程和测试人员的管理

工作方式

教练式技术指导

疏通、引导等各种技术管理方式

能力

①足够的技术前瞻能力
②足够的影响力
③掌握软件系统架构设计知识
④深刻理解测试流程
⑤精通测试技术、方法

①团队管理能力,包括沟通能力
②项目管理能力,包括问题分析和解决能力
③测试专业知识,以及其他软件工程知识


  3、软件测试架构师的成果

  软件测试架构师的成果如下。

  对软件产品需求定义、系统设计和代码编程等可测试性做出详细要求的规范性文档。

  对系统设计、单元测试等的验收标准。

  软件新系统的测试方案,包括采用的测试策略、测试技术、测试工具等。

  自动化测试框架,包括自动化系统架构设计、测试脚本语言等。

  得到改善的测试流程,特别是关系到技术层面的单元测试流程、自动化测试实施流程等。

  测试过程性能、测试阶段性成果质量、产品质量等的度量体系。

  软件组织的测试技术规划,包括测试技术发展趋势、新技术引入研究和评估报告、未来待解决的关键测试技术列表等。

  特定的或专项的测试方法或技术的研究成果。

  不同级别测试工程师所要掌握的各种技术能力集合及其技术等级评估办法。

  提升测试效率的各种有效测试方法、实践指导等文章。