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
你需要了解以下知识:
快速开始
通过以下简单的百度搜索示例来了解该框架如何使用:
-
Clone框架代码到本地
-
导入到eclipse中为Maven项目
-
在项目根目录下的config/element目录下新建baidu.yaml,在此文件中定义相关页面元素的定位规则:
- 在com.dcits.test包下新建包baidu.data、baidu.page、baidu.usecase,分别表示测试数据、测试页面、测试用例
- 在page包下新建两个PageModel类,类名需要同baidu.yaml中定义的页面名称相同,同时需要继承BasePage类,如下:
- 分别在两个PageModel类中定义相关的PageElement对象,对象名称也需要同baidu.yaml定义的元素名称相同:
-
在PageModel类中定义相关业务方法,如上图
-
在usecase包下新建Baidu的测试类,新建baidu搜索的测试方法,同时在方法上加上UseCase注解
- 如图所示,右键Run运行Baidu测试用例
- 下图为测试日志,在根目录下的report目录下会生成一个html报告