您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > web测试 > 正文

Web自动化测试框架设计

发表于:2017-01-09 作者:wywincl 来源:

  背景
  为什么要设计自动化测试框架,主要是由于以下几点原因:
  · 统一不同的测试技术,协同工作
  · 降低测试人员编写自动化测试用例的门槛
  · 对测试流程实现统一的管理
  · 方便测试脚本的维护,代码复用
  设计
  构建通用的Web自动化测试框架,这里我们选用了一些技术和工具,整体架构图如下:

  上图,是两个技术栈实现的测试框架,后面分别进行详细的介绍。
  W3C规范:The WebDriver Wire Protocol (RESTful)
  下图,以IE浏览器为例,说明原理。

  这里有几个概念需要理解:
  页面对象模型(Page Object Model)
  “Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素(按钮,输入框,标题 等),这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。 当页面元素id变化时,只需要更改测试页Class中页面的属性即可。
  页面对象模型的好处如下:
  Page Object将测试对象及单个的测试步骤封装在每个Page对象中,以page为单位进行管理
  Page Object的主要价值体现在对界面交互细节的封装,这样可以使测试案例可以更关注与业务而非界面细节,提高测试案例的可读性
  减少由于页面结构,元素属性变化而导致的大量测试用例重构
  构建页面对象模型:
  第一步,构建页面对象模型

  第二步,进行业务抽象