3)测试人员--和测试人员沟通,因为一旦实施了自动化测试,必将改变测试人员的原有工作方式,需要他们学习新的技能,与开发人员之间也要保持更紧密的合作,另外,也需要他们严格遵守新的测试流程和规范。我们需要测试人员理解自动化如何提高工作效率,并清楚遵守测试流程的必要性,还要明确认识自动化测试和手工测试的平等关系,并非所有人都要成为自动化测试专家,自动化测试也无法完全取代手工测试,以免造成不必要的心理失衡。
4)开发人员--获得开发人员对自动化测试的支持是非常关键的,我们需要鼓励开发人员开发优质的代码,增强软件的可测性,并通过有效沟通提高测试的覆盖率。另外,RUP提倡开发人员执行每个发布版本的冒烟测试。
四)自动化测试规范的制订
为什么需要制订企业级的自动化测试规范呢?
自动化测试规范是企业高层对该方案的授权见证,同时加强与企业其他部分的交流与合作;没有该规范,遇到问题时会手无足措,例如对于自动化测试的负责人,将会缺少执行的可信度,对于自动化测试实行人,将会遭受各种阻力。另外,企业没有清晰明确的测试目标和方案,各部门制订各自的规范必将在实行时发生冲突,从而导致项目的最终失败。
企业级自动化测试规范是对企业的测试流程及规范进行高标准的定义和描述,它定义了组织的测试目标、实施方式及遵循的标准,并包含了自动化测试在整个测试过程里的具体实施步骤。
那么,谁来制订自动化测试规范呢?RUP并没有规定非要由何人来制订,实际上,可以是任何有自动化测试技能或经验的人,例如自动化测试的倡导者、测试主管等。制订完成后,需要得到企业高层如CTO/VP的审批。
以下是某公司的自动化测试规范样例:
XYZ公司自动化测试规范
介绍:
该规范定义了XYZ公司的自动化测试过程,适用于公司所有的软件测试活动,对我公司的软件测试活动的方法和步骤以及测试资源进行文档化。任何测试活动都要遵循该规范规定的标准和结构,但是对于特定项目的测试活动,可制订项目级的测试策略文档。
目标:
XYY公司的软件测试目标是通过定制标准衡量软件系统的功能及其他非功能指标,以适应公司的商务运作,并以此衡量过程作为评测软件发布的通道;个别测试项目还需参考项目的相关测试策略及计划文档。
方式:
我公司测试标准以rational unified process(RUP)为参考,并符合RUP规范。
组织:
我公司采用手工测试和rational自动测试工具结合的方式实施软件测试
XYZ公司采用有资格认证的人员确定测试方案,并通过技能培训保证相关人员在各自测试区域得到最大发挥。
步骤:
… …
五)自动化测试的成员构成
首先说一下自动化测试成员的技能需求。一般来说,自动化测试项目成员的全部技能大致包括:
测试技能:理解GUI测试设计和标准、理解被测软件的商务逻辑、理解软件测试等测试管理技能:包含测试数据管理、测试设计和开发、测试战略定义、自动化测试项目管理等自动化测试技能:包含自动化测试工具使用、编程、测试套件的设计等技术技能:包含操作系统、数据管理、网络与硬件等软件开发技能:包含编程、软件系统设计、软件开发支持工具(配置与变更管理等)因此,构成软件自动化测试的项目成员包括(实际中可做相应调整或合并):
●测试战略定义者
●项目管理者
●测试数据管理者
●测试设计和开发者
●测试执行者
●测试支持者(配置管理与变更管理等)