自动化测试框架搭建

发表于:2015-5-13 10:50

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:厚脸皮测试    来源:51Testing软件测试网采编

  自动化测试框架结构说明
  目前实现的自动化测试框架大致可以分为以下四块内容:
  ·页面自动化测试
  ·API/WebService 自动化测试
  ·工具类/support类
  ·测试用例管理
  页面自动化测试
  页面自动化测试目前设计的目主要包括了如下几点:
  ·全部使用Page Object模式,进行测试数据和测试页面,测试流程分离
  ·定制WebElement,可以控制元素的特殊处理,或者统一记录日志等
  ·修改原生Selenium默认的Page Factory模式,转化为可以处理定制元素
  ·Driver Factory 根据配置生成driver
  ·页面元素和测试的数据根据名字进行绑定
  ·测试检查点可以注入到测试流程中
  ·可以组装的测试步骤
  ·可以通过注解定义页面测试步骤
  页面自动化测试详细说明
  修改后的Page Factory模式,流程图:
  
  可以组装的测试步骤
  可以组装的测试步骤的设计主要考虑以下几种组装方式:
  ·多个页面测试的组装
  ·过个业务流程测试的组装
  ·API和页面测试的组装
  ·检查点可注入到组装了的流程中
  ·实现不同子系统直接的调用
  为了实现这个,主要定义了TestAction接口和TestActionsBuilder类,目的如下:
  ·所有的测试操作都实现TestAction接口的execute方法
  ·TestActionsBuilder 用来组装不同的TestAction,实现不同业务流程组装
  页面元素和测试的数据根据名字进行绑定
  目前的一个实现就是每一个页面完成之后,都有一个相应的数据模型和页面绑定,每一个数据元素和每一个可输入的页面元素相绑定,作为测试的输入; 同时简单实现了页面数据输入时不需要指定设置样的数据,由框架来根据输入数据来决定进行什么样的操作。 之后可以做一些优化,比如根据页面模型,已经一些固定数据,来自动化分生成测试数据。
  注解驱动的页面流程组装
  使用注解的方式在单个页面上构建测试流程,以达到一定程度的减少代码量,目前主要通过如下的注解:
  ·UIActions
  ·UIAction
  来驱动注解的测试
  页面自动化实例-Login
  新的页面测试方式引入一个概念是TestAction,这个怎么理解呢?可以认为是如下几个事物:
  1、单个的一个测试动作,如点击某个按钮,访问某个连接
  2、一连串的测试动作,可以在页面上点击一连串的按钮,填写很多表单
  3、可以是操作读个页面,在每个页面上填写很多内容,点击很多按钮......
  4、可以是一个API请求,也可以是多个API请求
  5、可以是过个TestAction的组合
  关于TestAction,在实际的时候过程中,只要实现TestAction接口就可以了,以下是TestAction接口目前的定义:
  /**
  * 执行测试步骤的函数,可以是一个页面的多个步骤,可以是多个页面的步骤
  */ void execute(); /**
  * test action 的名字,默认是TestAction class的名字
  * @return */ default String getTestActionName(){ return this.getClass().getSimpleName();
  }
31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号