劣质的测试设计必将破坏自动化测试实施过程,它将导致测试结果不可靠--测试结果出现冲突或者干脆无效。劣质的测试设计也使测试难于维护和复用,如果我们没有特意的去为测试的复用性做出准备,那么自动化测试的收益必将随着时间的流逝而逐渐消失。因此,如果在自动化测试的设计里不把针对测试产品新版本的复用测试考虑在测试脚本库内,那么自动化测试的优势就不能得到最佳体现。
因此,当您设计自动化测试时,需要考虑到当前项目并计划到未来的项目。一个优秀的自动化测试设计,必须具有:
易于维护性-减少更新修改的工作量
可靠性-测试结果精确
复用性-测试脚本可以复用,包括在未来的其他项目里
二) 自动化测试的架构
软件工程里,架构是软件系统的组织结构,系统架构是
将产品分离成众多组件
在组件间建立通信机制
对系统指定数据接口
类似的,自动化测试的架构也是将软件系统的基本测试组件分解并组合的过程。它指定了测试组件的不同特征,以及组件间的关联结构,包括应用程序的测试数据、测试脚本、函数库等。
测试架构的选择主要依赖于测试需求,例如,如果你的测试需求是对被测程序的不同版本进行多次的运行自动化测试,那么选择一种复用性强并维护量小的架构是必要的。
除了测试需求外,测试环境也是影响测试架构的重要因素。换句话说,所有这些方面,包括架构,都影响测试的设计和实现。
许多不同的设计架构支持自动化测试。当然,测试架构最重要方面还是可维护性和可复用性,包括那些拿来自动化测试工具不进行设计,而直接进行录制或编码的测试方式(Cem Kaner称其为quick and dirty architecture),都可以实现要做的测试工作。以下表格列出Cem Kaner描述的通用自动化测试架构:
关于自动化测试架构的进一步信息,请参考Cem Kaner的 Avoiding Shelfware: A Managers' View of Automated GUI Testing。
文章来源于领测软件测试网 https://www.ltesting.net/