序言:经过了一段时间的探索,对于自动化测试平台项目的设计,已经进入了一个初步阶段,即自动化测试平台的基本形式已经实现,想想,自动化测试平台从无到有,自动化测试框架从基于需求环境的探索到基本实现真的是一个很值得玩味的日子,且将实现方式与大家分享一下,希望大家有什么好的想法或者好的建议也一起分享和讨论一番。
感觉,这篇文算算是我自动化测试工作以来对自动化测试设计和理解的一个阶段性过程吧,分享出来与大家共勉吧。
一、自动化测试平台定位
我一直崇尚的自动化测试观点是“需求引导设计”,只有将需求分析清楚,将需求定位好,才能着手去进行所谓的自动化测试框架与平台的设计。
而所谓的自动化测试平台(也可以认为是一个集成的自动化测试框架),我认为可是是若干个小型框架的组成,而每个小型框架有各自独有的作用,他们都是作为自动化测试平台的一个组件或者可以说是一个服务。
因此,其自动化测试平台的原则就是
1)普遍的可适用性。
2)灵活的可插拔性。
二、自动化测试分布式平台设计
自动化测试分布式平台设计基本整体架构图如下:
按照层次分的话,可以分为:
1)用例抽象层,此层功能为:
a)可以进行测试驱动,即调用测试用例驱动表进行测试(测试用例驱动表可以存储在本地端,存储方式可以为EXECL表格形式或者数据库形式)
b)可以在本地客户端进行用例脚本的编写和生成。生成的脚本可以通过转换至与外部工具调用层次中的工具想对应的脚本。(其统一的脚本形式可以为XML实现)
2)业务实现层,此层功能为:
a)可以实现各种业务,即抽象出业务,通过不同的业务实现方式调用不同的测试框架实现。
b)可以通过不同的业务实现方式调用不同的测试外部工具实现。
3)分布式交互层
a)客户端与服务器端进行交互的通道
b)各种外部服务的接入的通道,例如:日志服务、测试监控服务、邮件通知服务等。
4)外部工具调用层
a)运行不同的驱动命令,调用不同的外部工具进行测试。