基于STAF的分布式架构模块设计

上一篇 / 下一篇  2011-09-01 13:41:55 / 个人分类:自动化测试—框架思想

                          简易自动化测试设计之(三)

                 —基于STAF的分布式架构模块设计

 

序言:这里将简单说说基于STAF设计的分布式模块,当然,首先需要明白什么是STAF,那就以STAF为主,讲讲其分布式一些简单的设计方法,当然,不一定适合各个情况,只做参考而已。

 

一、分布式架构设计

基于STAF,其主要是设计了三个部分

1、 控制客户端,其主要是设计了一个界面,应用来控制测试用例的点选、测试用例脚本的打开和编辑、测试统一结果的查看以及测试请求的下发(即与STAF的交互)

2、 执行客户端,其主要是作为STAF的一个外部服务设计的,即执行端的STAF接收到控制端发送来的请求信息,进行执行端上的测试执行,并且将测试统一结果返回到控制端。而在这里,我设计的不是直接返回到控制端,而是通过中间件的形式,这个中间件可以是EXCELCSV表格,或者数据库表格,测试用例框架将测试结果信息写入到其中间件中,然后测试执行端解析这些中间件状态,传递到STAF日志服务,控制端可随时读取到其结果值,测试完毕后,给控制端一个状态值,控制端收到状态值后,将执行端的具体测试日志通过STAF的文件服务传送到控制端即可。

3、 测试服务器端,保存测试用例脚本以及测试之后的日志,可以通过控制SVN进行随时更新或者STAFFSFTP服务都可。

 

二、STAF的应用说明

STAFsoftware test automation frameworkIBM开源的自动化测试框架),IBM软件设计的理念是很强大的,他的rational,现在是基jazz协议平台的,即遵循这个软件交付平台的协议工具,都可以互相通信使用,使其灵活性大大增加。而STAF也是遵从与这一理念,所谓STAF,按照我的理解,就是一个提供各种通信和服务机制的平台,遵循这个规则的服务都能在这个平台上互相通信和使用。我花费了很长一段时间才真正理解到这种方式的强大性,其实我觉得做自动化测试就是需要这么一个理念,一个可插拔的框架,任何机制模块都是一个基于框架的组件。

STAF应用的几个部分:

1) STAF分布式架构:STAF的分布式架构提供了分布式功能,每一个STAF其实是一个分布式组件,其间可以互相通信,传递请求信息。然后,其提供了一系列组件模块服务插拔的机制。

2) STAF的服务:STAF的服务包括内部和外部服务,通过这些服务,可以完成一系列自动化测试中的基本功能,例如:日志的服务、时间驱动服务、资源池服务、文件传递服务等,依靠这些服务,可以进行任意服务的组建工作,构建出自己合适的自动化测试体系。

3) STAF的定制服务:STAF的定制服务,就是其应用java或者c++设计一个遵循STAF服务规则的功能模块,这样,就可以将此功能模块插入STAF架构中,与其他STAF服务进行通信。

4) STAXSTAF的执行引擎,其也是作为STAF的一个外部服务,执行方式是读取XML文件撰写的测试用例来进行控制STAF的执行,如果对这种撰写用例的方式不是很了解的话,也可以不用。当然,脚本的执行命令和环境变量在各个平台是不同的,具有很大的差异性。为避免将这种差异硬编码到自动化脚本中,并使自动化脚本具有很好的透明性,采用基于XML的配置文件可以覆盖多种平台的差异性。

后面有机会的话具体说说基于STAF的设计方法。

 

三、B/S架构的分布式设计想法

想过用JSP设计一个B/S架构的分布式模块

1、 控制客户端;都是基于web,保证了其安装的繁琐性,测试人员用起来比较方便,可以在web界面添加自动化测试用例驱动表。

2、 执行客户端;执行端也就是后台,即是解析测试驱动模块,可以解析web控制客户端的执行用例驱动表,将统一结果信息和具体的日志信息写在web上。

3、 服务器端,通过FTP方式,进行测试用例脚本的调用。

总之,基于整个web构建的自动化测试框架的话,个人觉得确实能够方面很多,但是要基于此从头做起的话,因为业界有了很多这方面的自动化测试框架,例如:STAFRobot Framework,这样的话,确实有点得不偿失了。不过对于那些没有分布式功能的框架,可以考虑一下。

 

 这段时间,发现自己差点迷恋于框架和平台的设计工作,而离真正的自动化测试应用越来越远,有时候发现,想的太远反而不是件好事,呵呵,这才是真的得不偿失,也是一种浮躁的表现吧,共勉

TAG:

xin_晴的个人空间 引用 删除 xin_晴   /   2011-09-02 10:37:53
您好,我是51Testing软件测试网的编辑,您的本篇博文被推荐至51Testing软件测试网首页发表:http://www.51testing.com/html/04/n-244304.html
感谢您关注并支持51Testing博客,期待您更多的优秀原创博文。
@槽神刘叫兽 引用 删除 lyscser   /   2011-09-01 14:04:43
5
 

评分:0

我来说两句

Open Toolbar