自动化测试框架模型SAFS

       SAFS(Software Automation Framework Support)是一个开源的支持多平台的自动化测试框架,由 SAS Institute的Carl Nagle开发(http://safsdev.sourceforge.net/Default.htm)。下 图描述了这个模型的结构:  

       

        这个模型由测试表、核心数据驱动引擎、成员函数库、支持库、应用映射表组成,分别介绍如下:

        测试表(Test Tables):保存测试数据和关键字,分为高层测试表、中层测试表、低层测试表。其中,下层的测试表被上层的测试表所调用。

        核 心数据驱动引擎(Core Data Driven Engine):与测试表对应,分为高层驱动器(也叫循环驱动器)、中层驱动器(也叫组装驱动器)和 低层驱动器(也叫步骤驱动器)。上层的驱动器读取相应测试表的关键字逐级传递给下层的驱动器,最后由低层驱动器调用关键字库中的指令对应的组件函数来执 行。

        组件函数库(Component Function):组件函数实现了用户对界面对象的各种操作指令,它在被测应用和自动化工具之间提供了一个隔离层。

        支持库(Support Libraries):通用的程序和工具库,提供诸如数据库访问、字符串操作、文件访问、日志记录等基础性的支持功能。

        应用映射表(Application Map):对应用中的对象定义一套命名规范,将这些实际对象的名字和自动化工具识别的对象名联系起来,形成映射表,从而使应用对象元素和测试对象名分离,提高了脚本的可维护性,中国自学编程网,www.zxbc.cn 。 

        SAFS 基于数据驱动和关键字驱动的思想设计,对各种商用测试工具的开发产生了深远的影响。早在1999年就为Rational 实现了自动化框架 RRAFS (Rational Robot Automation Framework Support),后来为 Mercury Interactive WinRunner 实现的框架叫WRAFS,还开发了一系列引擎。目前正在实现一个在多平台上测试Java应 用的引擎SAFS/Abbot,这也是一个开源项目(http://abbot.sourceforge.net/doc /overview.shtml)。另外一个开源框架 STAF:Software Testing Automation Framework(http://staf.sourceforge.net /index.php)也值得研究。 

        Carl J. Nagle的著名观点是:在构建测试策略时,必须将被测应用 的变化和测试工具的变化所造成的影响降低到最小 (\"When developing our test strategy, we must minimize the impact caused by changes in the applications we are testing, and changes in the tools we use to test them. \")。软件企业如果要构建自己的自动化测试平台,可以将SAFS模型作为参考,并吸取其中的思想。

你可能感兴趣的:(编程,框架,.net,软件测试,企业应用)