当前位置: 首页 > 免费论文下载 > 电子信息 >
论文服务

基于STAF的自动化测试解决方案

时间:2013-03-19来源:易品网 点击:
【摘要】自动化测试原来的一个主要目的是使软件测试的未来阶段越来越容易,成本越来越低。当然自动化测试需要一个完整的解决方案才能实现,自动化测试框架的引入、强大的资源整合能力和有效的自动化测试体系的设计将是实现自动化测试的十分重要的因素。 
  【关键词】自动化测试;中间业务;STAF 
  [中图分类号]TP311.5 
  一、自动化测试的目的和优点 
  自动化测试已越来越深入人心,其重要性不言而喻。性能测试中大规模并发的要求,压力测试中大规模压力的模拟,回归测试中大规模测试用例的反复执行都要求实现一个高可用、高可扩展性的自动化测试框架体系。回归测试要频繁地重复运行,工作量很大,需对原有或正常功能进行测试,以保证原有或正常功能依然能够工作,尤其系统增加新功能时,从需求提出到验收测试要求时间比较短,实施自动化测试就显得格外必要和重要。 
  二、STAF的内涵、功能和优点 
  STAF(Software Testing Automation Framework,软件测试自动化框架)是一个开源,支持多种平台,多种语言的框架,主要围绕着可重用组件和服务(如过程调用,资源管理,日志,监视)。它的目的在于使软件测试更加容易,尤其更易于实现测试自动化。其功能包括:自动化测试用例的创建,管理和自动化测试环境的创建,执行计划的创建(例如,测试进度的安排和执行)等等。STAF提供一个基础,并基于此构建一个更高级的解决方案,并且提供一种可插拔方式来支持各种平台和语言。STAF用来帮助解决一般工业问题, 比如频繁的产品周期,但缺乏准备时间,减少测试时间,多种平台选择,多种编程语言选择,日益增加的国际语言的要求。STAF在这些方面都有所帮助,因为它是一项被证明成熟的技术,可提高自动化和可重用性,已经有广泛的平台和语言支持,并且提供了一个跨团队的基础平台。 
  STAF是通过服务来扩展他的功能。一个服务提供了一些有针对性功能的函数集合,例如,日志记录,处理调用等等。STAFProc是在机器上运行的进程,被称为一个STAF客户端,它接受请求并且发送给相应的服务。这些请求可以来自本地机器或者远程机器上的STAF客户端。这样STAF工作在对等环境,所以可以向远程机器请求服务。 
  STAF是基于以下原则设计的:一是最小化机器需求-包括软件和硬件;二是易重用;三是易扩展-容易创建服务并且插入到STAF中。STAX是一个执行引擎,可以使测试用例的发布,执行以及结果的分析彻底自动化。 
  STAX建立在STAF, XML, Python三种已有的技术的基础上,在测试人员手里能发挥强大自动化威力。STAX也提供了一个强大的GUI监视应用程序,它允许你监控并与你的工作过程交互。STAX的主要的特点如下:支持并行执行;用户定义的执行控制粒度;支持嵌套的测试用例;可控执行时间的能力;运行时模块导入能力;支持已存在的Python和Java模块和包;扩展STAX语言和GUI监控应用程序的能力。利用这些功能,就可以保证在高效可控的情况下,构建一个高可靠性的脚本来实现整个测试环境的自动化。 
  其他的STAF服务也可以提供创建端到端的自动化解决方案。在你的测试用例和自动化解决方案中,利用这些服务你可以开发更加健壮的,动态的测试用例和测试环境。 
  而且STAF+STAX自动化测试框架的通用性更强大,适合各类应用系统,不仅适合B/S结构,而且还适合C/S结构的应用。STAF+STAX是一种分布式远程调用体系,支持跨平台和多语言的自动化测试框架。除此之外,还提供了许多增强服务,以满足自动化测试的需要。 
  下图展示了它带给我们的自动化测试环境。虽然没有在图中显示负载、性能测试工具,但实际上它可以支持各种测试工具,包括自己开发的测试工具。 
  三、自动化测试解决方案 
  (一)解决方案 
  在STAF框架的技术上,可使用以下技术来完成基本自动化测试: 
  (1)AutoIT 
  自动化测试的实施主要在SIT测试阶段,前端是基于C/S架构的,针对前端的特点,本框架采用AutoIT作为前端测试工具,进行测试脚本的开发,AutoIt是一个免费的软件,类似于脚本语言,用于图形化用户接口的自动化测试。 
  (2)shell脚本 
  可以说前端执行的所有交易操作都可以归结为是对数据库的增删改查,执行交易的结果可以通过查询数据库进行验证,因此对所有测试检查点的验证利用shell脚本对数据库进行查询,查询的结果即为实际执行的结果。 
  (3)BadBoy 
  由于本次测试环境为开发环境,通过浏览器访问客户端,因此使用了B/S结构的测试工具BadBoy,它是GUI测试工具,主要进行WEB测试,可以捕捉WEB的UI操作。 
  (4)STAX 
  STAX 是STAF的一个插件,基于STAF的一个封装,STAF的请求是一些格式化的STAF命令,语法复杂,如果我们提交很多请求且请求之间存在某种逻辑关系的话,使用STAF命令很难实现,通过STAX,我们可以提交XML文件形式的STAF请求, XML 文件包含一些节点,封装STAF命令,STAX可以解析XML,向STAF发送请求,而且STAX提供了类似于逻辑分枝、循环、函数等, 这样XML看上去就像某种脚本语言. 
  (5)Web Management Interface(待实现) 
  它是一个PHP WEB应用程序,用于管理测试案例和测试场景,安排测试的执行并记录测试结果。 
  (二)测试框架 
  注:测试案例编写者只需要编写红色字体部分 
  在该自动化测试系统中,一个测试案例包含一个STAX JOB(一个描述操作步骤的XML文件)、程序和脚本,这些脚本被STAX JOB调用,可以远程或本地执行。当执行这个案例时, STAX 把XML文件作为输入,然后按照其定义的步骤依次执行。一个典型的交易测试案例可能包含以下操作:在用户端调用web界面,执行一个交易,然后服务器端验证执行结果,核对执行结果,返回测试结果。大体设计思路是:使用工具(Badboy或AutoIT)录制脚本,该脚本主要是对前端一些有目的的操作,操作自动执行后调用后台shell脚本,通过查询数据库(或者其他方法)验证前端执行结果,判断交易是否成功。 
  • 认准易品期刊网

1、最快当天审稿 最快30天出刊

易品期刊网合作杂志社多达400家,独家内部绿色通道帮您快速发表(部分刊物可加急)! 合作期刊列表


2、100%推荐正刊 职称评审保证可用

易品期刊网所推荐刊物均为正刊,绝不推荐假刊、增刊、副刊。刊物可用于职称评审! 如何鉴别真伪期刊?

都是国家承认、正规、合法、双刊号期刊,中国期刊网:http://www.cnki.net 可查询,并全文收录。


3、八年超过1万成功案例

易品期刊网站专业从事论文发表服务8年,超过1万的成功案例! 更多成功案例


4、发表不成功100%全额退款保证

易品期刊网的成功录用率在业内一直遥遥领先,对于核心期刊的审稿严格,若未能发表,全额退款! 查看退款证明

特色服务
杂志社内部绿色审稿通道,快速发表论文
发表流程
论文发表流程
专题推荐