有测试问题请微信联系作者,备注来意(点击此处添加)
240
一名普通的测试打工人;专注自动化测试技术研究、实践、总结、分享、交流。
用我8年+的经历,给大家带来更多实用的干货。
人若有志,就不会在半坡停止。

【APP自动化进阶】APP自动化项目框架实战

一、自动化项目介绍

1.涉及技术栈

  • python
  • appium
  • selenium
  • pytest
  • allure
  • subprocess
  • adb

2.实现的功能概述

  • 业务功能的封装
  • 测试用例封装
  • 测试包管理
  • 截图处理
  • 断言处理
  • 日志获取
  • 测试报告生成
  • 数据驱动
  • 数据配置
  • 多线程执行
  • 开启、关闭appium、allure等服务

二、框架结构设计

项目目录

  • app---apk文件
  • base---核心方法
    • driver.py---driver驱动
    • base_element.py---元素操作
  • business---业务方法
    • login_page.py---登录页方法
    • home_page.py---首页方法
    • ...
  • config---配置文件
    • kyb_caps.yaml---设备信息配置文件
    • log.yml---log配置文件
  • data---测试数据文件目录
    • user.csv
    • ...
  • logs----日志文件目录
    • xxxx-xx-xx_log.log---项目日志
    • allure_logs
      • xxxx
    • appium_logs
      • xxxx
  • reports---报告目录
    • xx_result---xx设备result文件目录
    • xx_html----xx设备html文件目录
      screenshots---图片保存目录
      test_case---测试用例目录
      • test_login
        • test_login.py
          conftest.py
  • tools---工具类
    - common.py---用例常用工具,如:页面初始化、弹框检查和关闭、文件处理等。
    - decorator.py---装饰器工具
    - manage_devices.py---设备管理
    - server.py---服务类(appium、allure服务等)
    - setup_teardown.py---自定义用例前置后置方法
    - unit.py---日志、路径处理等
  • conftest.py---pytest自定义参数
  • pytest.ini
  • run_thread.py---线程执行入口
  • run_all.py---主执行入口

三、核心方法

driver驱动封装

元素操作封装

四、常用方法

五、业务方法及用例

业务方法封装

测试用例

六、用例执行及报告生成

七、项目相关技术

adb命令

【adb基础】adb详解及使用

定位方法

【UI自动化基础】元素定位

appium设备操作

【APP自动化基础】appium与设备交互方法

pytest使用

【自动化基础】pytest详解及进阶使用

python中运行系统命令

【Python基础】Python中执行系统命令

Allure报告

Pytest中allure报告生成
【自动化基础】allure描述用例详细讲解及实战

log封装及使用

【Python基础】日志工具介绍及使用

多线程

【Python进阶】并发编程方式
【APP自动化进阶】pytest+appium多设备并发

posted @ 2024-02-01 20:24  三叔测试笔记  阅读(50)  评论(0编辑  收藏  举报
返回顶部 跳转底部