首页 > 其他分享 >【APP自动化进阶】APP自动化项目框架实战

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

时间:2024-02-01 20:34:22浏览次数:31  
标签:文件目录 进阶 APP py --- xx pytest 自动化

一、自动化项目介绍

1.涉及技术栈

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

2.实现的功能概述

  • APP自动化执行
  • 支持pytest
  • 生成测试报告
  • 多线程执行
  • 自动开启、关闭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驱动

元素操作

四、常用方法

业务方法及用例

页面方法封装

测试用例

执行用例类

标签:文件目录,进阶,APP,py,---,xx,pytest,自动化
From: https://www.cnblogs.com/upstudy/p/17995227

相关文章

  • 文心一言APP上线新功能,一张照片、三句话即可生成专属数字分身
    只需一张照片、录制三句话,就能拥有一个自己的数字分身?这不是科幻电影,而是文心一言APP上线的新功能-数字分身。目前,文心一言APP正在内测数字分身新功能,明天起,iOS和Android用户升级新版本后,均可免费使用该功能,极速体验创建和使用数字分身的乐趣。据了解,文心一言APP新功能极大缩短了......
  • SpringBoot自动化配置
    SpringBoot自动化配置一.SpringBoot自动化配置原理1.SpringBoot引导类注解介绍在SpringBoot的启动引导类上有一个@SpringBootApplication注解这个注解中有三个Spring的注解,分别是@SpringBootConfiguration/@CompoenetScan/@EnableAutoConfiguration2.@SpringBootCo......
  • 浅谈UI自动化测试
    为了让对自动化技术感兴趣的朋友们有真实案例的支持,今天我们给大家带来一期适合新手的UI自动化测试介绍。我们的目标是让大家能够轻松理解UI自动化测试的概念,并且能够亲自动手去实践。通过这个介绍,大家能够对UI自动化测试有一个整体的理解,并且能够自己动手去做。项目的选取:虽然U......
  • @MappedSuperclass用法,主要用于JPA基类(超类)的定义
    @MappedSuperclass 是JavaPersistenceAPI(JPA)中的一个注解,用于指示某个类是一个映射的超类(MappedSuperclass)。映射的超类类似于普通的Java类,但它不会被映射到数据库表,而是作为其他实体类的基类,用于共享字段和方法。当你在JPA中定义一个实体类的时候,可以使用 @Entity ......
  • 纯血鸿蒙来了,鸿蒙App开发有可能提速吗?
    “全世界做产品挣钱的公司很多,但有能力打造操作系统的公司没有几家,最后世界上的操作系统就只有三套:鸿蒙、iOS和安卓。”---360集团创始人、董事长周鸿祎 “HarmonyOS实现了AI框架、大模型、设计系统、编程框架、编程语言、编译器等全栈自研,有核心技术、全栈能力、底座和生......
  • Android系统中/system/priv-app/和/system/app/以及/system_ext/app/的区别
    在Android系统中,这三个目录都是与应用程序相关的,但它们在系统中的位置和用途上有一些区别。/system/priv-app/目录:该目录包含被认为是系统的一部分的特权应用程序(privilegedapps)。特权应用程序通常是由设备制造商或ROM开发者预先安装的,它们在系统中运行时具有更高的权限。......
  • Ansible-playbook剧本进阶
    剧本高级特性篇循环在写playbook的时候发现了很多task都要重复引用某个相同的模块,比如一次启动10个服务,或者一次拷贝10个文件,如果按照传统的写法最少要写10次,这样会显得playbook很臃肿。如果使用循环的方式来编写playbook,这样可以减少重复编写task带来的臃肿。http......
  • XPath从入门到精通:基础和高级用法完整指南,附美团APP匹配示例
    XPath通常用来进行网站、XML(APP)和数据挖掘,通过元素和属性的方式来获取指定的节点,然后抓取需要的信息。学习XPath语法之前,首先了解一下一些概念。概念介绍节点之间的关系以上面的HTML节点树为例,节点之间包含了下列的关系:父节点(Parent):HTML是DIV和P节点的......
  • Dapper 经验
     in查询publicasyncTask<IReadOnlyList<ResourceWorkCenterView>>GetResourceWorkCenterViewByWorkCenterIdsAsync(long[]workCenterIds){stringsql="select*fromResourceWorkCenterViewwhereWorkCenterIdin@workCenterIds";......
  • App requires Multidex support Multidex support is required for your android app
    flutterandroid报错64k!]ApprequiresMultidexsupportMultidexsupportisrequiredforyourandroidapptobuildsincethenumberofmethodshasexceeded64k.Seehttps://docs.flutter.dev/deployment/android#enabling-multidex-supportformoreinformation......