python_Appium自动化测试框架
设计思路
框架采用python3 + appium + PO + yaml + ddt + unittest等技术编写成基础测试框架,能适应日常测试工作需要。
1、使用Page Object模式将页面定位和业务操作分开,分离测试对象(元素对象)和测试脚本(用例脚本),一个页面建一个对象类,提高用例的可维护性;
2、使用yaml管理页面控件元素数据和测试用例数据。例如元素ID等发生变化时,不需要去修改测试代码,只需要在对应的页面元素yaml文件中修改即可;
3、分模块管理,互不影响,随时组装,即拿即用。
测试框架设计
- 应用接口层主要是封装基础类、操作及查找类、测试用例、测试数据等,封装的类来自于底层接口
- 业务层面主要是封装对象页面类,一个页面建一个类,业务层页面继承基础层
- 测试用例针对产品各页面功能进行构造摸拟执行测试
- 框架层提供基础组件,支撑整个流程执行及功能扩展,给用例层提供各页面的元素数据、用例测试数据,测试报告输出等
- 执用测试用例之前,会自动在后台运行appium服务进程,并同时后续自动执行用例,无需手工操作appium工具运行服务
- 框架支持Jenkins持续集成
测试框架目录结构
测试框架思维导图
如要编写测试用例脚本,只需在Pages、testcase、testdata、testyaml等目录创建即可。
测试结果展示
- 测试报告
如需要查看截图,可点击显示截图会弹出图片显示。点击通示或失败会显示日志信息。
- 自动生成的用例截图存放的指定目录
- 自动生成的日志文件记录信息,除记录执行用例过程日志,还会同时记录 appium中间件通信交互日志。
- 自动发送测试报告至指定的邮箱
作者:Jason
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。