码云推荐 | 易大师 UI 自动化测试框架

225 阅读2分钟
原文链接: gitee.com

MasterYI UI Test Framework

易大师UI自动化测试框架

当前版本:0.1.0beta

码云地址:gitee.com/xuwangcheng…
更新日志: 易大师UI自动化测试框架-更新日志
框架详细使用说明请参考:gitee.com/xuwangcheng…

项目介绍

希望对此框架后续开发有兴趣的朋友大牛们进QQ群 468324085 一起交流学习,加群验证: 易大师。

基于PageMode模型进行测试代码编程的UI自动化测试框架,元素定位、业务逻辑、测试数据分离。
底层由selenium-java框架支持,使用yaml文件定义元素定位和用例执行规则。

在开发过程中参考了以下优秀的自动化测试框架的某些思路或思想,在此感谢:

框架使用或者借鉴了以下开源工具:

主要功能:

  • yaml文件定义元素信息,方便阅读、编写和维护;
  • 基于PageModel模型编写测试业务代码,代码复用性高、易理解,灵活;
  • 使用数据工厂生产测试数据,分离业务代码和测试数据;
  • 默认实现了多款不同的测试报告模板,用户可实现自定义的报告处理器;
  • 快捷的邮件推送测试结果和测试报告附件;
  • 分布式执行;
  • 内置定时执行器;
  • 集成spring boot,可对接任何自动化管理系统或平台,对外提供用例查询、测试执行、报表数据查询等接口(尚未完成);
  • java语言编写,熟悉java编程的可快速上手。

环境要求

系统: windows
jdk >= 1.7
浏览器: chrome >=68
ide: Eclipse

你需要了解以下知识:

快速开始

通过以下简单的百度搜索示例来了解该框架如何使用:

  1. Clone框架代码到本地

  2. 导入到eclipse中为Maven项目

  3. 在项目根目录下的config/element目录下新建baidu.yaml,在此文件中定义相关页面元素的定位规则:

baidu.yaml

  1. 在com.dcits.test包下新建包baidu.data、baidu.page、baidu.usecase,分别表示测试数据、测试页面、测试用例

1

  1. 在page包下新建两个PageModel类,类名需要同baidu.yaml中定义的页面名称相同,同时需要继承BasePage类,如下:

2

  1. 分别在两个PageModel类中定义相关的PageElement对象,对象名称也需要同baidu.yaml定义的元素名称相同:

3 4

  1. 在PageModel类中定义相关业务方法,如上图

  2. 在usecase包下新建Baidu的测试类,新建baidu搜索的测试方法,同时在方法上加上UseCase注解

5

  1. 如图所示,右键Run运行Baidu测试用例

6

  1. 下图为测试日志,在根目录下的report目录下会生成一个html报告
7 8