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
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/yinjia/p/14696015.html