自动化测试测试平台策略 之 模块交互策略

上一篇 / 下一篇  2011-11-25 18:32:29 / 个人分类:自动化测试设计-平台策略

自动化测试测试平台策略

模块交互策略

序言:要做一个自动化测试平台,越强大的平台,其模块之间的交互越难,也就是各个模块之间的接口定义越难,而如何采用一种策略去规范各个模块的接口、消息格式和交互方式更是难,这一点,我觉得可以从学习网络协议中找到一丝灵感,那些协议的交互方式以及消息的格式传递都是值得学习的,以前觉得学习协议纯粹是为了了解,现在学习真的是想掌握其几点精华思想,突然能够想象到:一群人在一起思想的碰撞,不断的去总结,去发现,去实用,才有了现在的协议标准。觉得,不一样的领域都去发现才能有所感悟。

 

一、自动化测试平台中的模块

1、 软件产品是具有一系列特定功能的组件组成,其系统可以被分为一系列的功能模块,每个模块所特有的信息处理过程都被包含在模块的内部,如同一个黑箱,这就是“封装性”,然后模块与模块之间按照一定的规则相连则成了一个复杂的系统(一个系统也可以作为一个模块,去组成更复杂的系统)。

2、 而在自动化测试平台的系统开发中,首先,按照其抽象出来的自动化测试流程和方式划分一系列的功能模块,这些功能模块都能脱离系统独自使用,有的模块独自使用能够提高一些效率(像CLI测试中的基于脚本的自动化测试框架,GUI测试中的基于工具的自动化测试框架等都是一种模块,还有一些测试工具),然后在此些模块的基础上,我们定义一些交互规则,将他们以最好的方式进行安排在自动化测试流水线上,然后提供一个统一管理的界面,慢慢的,就构建成了一个自动化测试平台。(关键点:必须在测试功能模块独自提高效率的基础上,能够在测试流程中加以应用,平台的作用伴随更多的服务,将他们流水线化

二、自动化测试平台平台构建难点

1、 如何在测试流程中提炼自动化测试流程,然后抽象出自动化测试流水线。

2、 如何能够统一规划整个测试部门的测试资源,这需要一个服务器去统一存储和调度管理。

3、 然后,很关键的一步:如何将已有的功能测试模块结合起来,即建立一套良好的交互协议和交互消息格式,使其能够很好的交互和互补,真正完成自动化测试流水线的运作。

三、自动化测试平台模块交互策略分析

以下策略是自己对测试平台建设中的一些提炼,不一定完全适合,可以参考

1、 策略1:服务注册机制

即定义一个框架,其框架提供相应的API,所有的模块利用这个API遵循一定的规则都可以作为服务注册到这个框架中,注册的同时,也对该服务的发送和接收的消息进行了规定,不同的消息可以调用其模块不同的功能,然后,模块则可以以这个框架为媒介,以传递消息的方式互相控制。当然,对于数据的存储,需要单独提供一个空间,可以是服务器,也可以是内存机制。

2、 策略2:消息分发统一机制

即定义一个消息分发模块,模块的交互都会经过这个消息分发模块,这个消息分发模块将消息进行解析,然后传送到对应的模块。

这里,两种策略都需要统一规定好消息的格式。可以参考网络协议中的一些消息格式,例如一个简单的:

源头

目的头

时间

消息类型

消息内容

 

总之,个人上次听过一句话,如果你在一个行业领域已经停滞不前,那么就将眼光放宽,去另外一个领域去看看,往往这样,会激发你无限的灵感。这也许是真理啊,乔布斯不就很爱好艺术吗?马云不就是个金庸迷吗?当然,不是说要去复制,个人觉得,说的是不要闭门造船吧,而是学会提炼共性,在思想中升华吧。


TAG:

wansini911的个人空间 引用 删除 wansini911   /   2011-12-01 12:47:26
还真转载了额 厉害厉害
德尔惠的个人空间 引用 删除 德尔惠   /   2011-11-30 17:37:12
说的不错,顶!
xin_晴的个人空间 引用 删除 xin_晴   /   2011-11-28 10:34:04
您好,我是51Testing软件测试网的编辑,您的本篇博文被推荐至51Testing软件测试网首页发表:http://www.51testing.com/html/56/n-249656.html
感谢您关注并支持51Testing博客,期待您更多的优秀原创博文。
 

评分:0

我来说两句

Open Toolbar