自动化测试标准包含两方面:
●测试资源相关的标准
●测试过程相关的标准
自动化测试的最优化设计
一)自动化测试的设计目标
劣质的测试设计必将破坏自动化测试实施过程,它将导致测试结果不可靠--测试结果出现冲突或者干脆无效。劣质的测试设计也使测试难于维护和复用,如果我们没有特意的去为测试的复用性做出准备,那么自动化测试的收益必将随着时间的流逝而逐渐消失。因此,如果在自动化测试的设计里不把针对测试产品新版本的复用测试考虑在测试脚本库内,那么自动化测试的优势就不能得到最佳体现。
因此,当您设计自动化测试时,需要考虑到当前项目并计划到未来的项目。一个优秀的自动化测试设计,必须具有:
●易于维护性-减少更新修改的工作量
●可靠性-测试结果精确
●复用性-测试脚本可以复用,包括在未来的其他项目里
二)自动化测试的架构
软件工程里,架构是软件系统的组织结构,系统架构是
●将产品分离成众多组件
●在组件间建立通信机制
●对系统指定数据接口
类似的,自动化测试的架构也是将软件系统的基本测试组件分解并组合的过程。它指定了测试组件的不同特征,以及组件间的关联结构,包括应用程序的测试数据、测试脚本、函数库等。
测试架构的选择主要依赖于测试需求,例如,如果你的测试需求是对被测程序的不同版本进行多次的运行自动化测试,那么选择一种复用性强并维护量小的架构是必要的。
除了测试需求外,测试环境也是影响测试架构的重要因素。换句话说,所有这些方面,包括架构,都影响测试的设计和实现。
许多不同的设计架构支持自动化测试。当然,测试架构最重要方面还是可维护性和可复用性,包括那些拿来自动化测试工具不进行设计,而直接进行录制或编码的测试方式(Cem Kaner称其为quick and dirty architecture),都可以实现要做的测试工作。以下表格列出Cem Kaner描述的通用自动化测试架构:
关于测试数据:
需要准备什么样的数据?
●参考程序流程图或用例设计图。流程图可提供测试系统需要的数据信息,或者数据间的依赖关系,然后定义需要的数据,例如数据库数据、输入框数据、期望数据等。
从哪里获得需要的数据?
●产品数据或先前版本的数据。首先确定这些数据是否合适,或者从中摘录合适的数据子集。
●创建数据。
无论哪种获取方式,都不要将无法解决的问题遗留到开始运行测试阶段;可以通过和数据库管理员或系统设计人员交流获得数据,以最大程度减少和测试数据相关的测试中断。
相关链接: