app自动化前置准备环境搭建

news2024/12/28 6:43:45

编写脚本之前的一些前置准备工作。

1,安装appium server:官网地址:http://appium.io/

安装教程:https://www.cnblogs.com/gancuimian/p/16536322.html

2,安装appium客户端:

appium客户端安装相对较简单,它主持主流的编程语言。我目前使用的是python语言,所以直接安装python客户端即可。打开命令行工具,使用python管理工具完成appium客户端安装。  pip install Appium-Python-Client

3,安装 java JDK

Appium需要Java 8以上的开发环境(是java的开发环境,不是运行环境),我们在 Oralce官网 能直接下载到。由于网络影响,可能无法正常进入oracle官网下载,那么可以选择通过国内镜像下载也是可以的,比如通过 华为镜像地址 下载,下载后点击安装,设置好安装路径。

JDK下载安装好后,同样需要配置环境变量。打开环境变量设置窗口,开始菜单→右键计算机→系统属性->高级系统设置->高级->环境变量。(具体如何配置环境变量,这里不过多赘述),设置好后最好重启一下。

4,安装 Android SDK

目前安卓的运行环境主要集成在一个叫做 Android Studio 的软件当中,这个软件非常的庞大,是用于安卓软件的集成开发环境。这个软件非常吃内存,作为自动化测试,也不会用到里面的巨大多数功能,所以我们会尝试更轻量级的 ADTBundle,号称安卓的新手开发礼包,这里面提供了必要的安卓运行需要的工具以及环境。

新手包国内下载地址:https://www.androiddevtools.cn/

 点击 ADT Bundle后,会跳转到新页面,下载对应的系统即可。

 安装并解压后,同样需要配置环境变量。(ANDROID_HOME和Path)

 Path:把几个目录配置进来即可

5,手机或者模拟器。

既然做app自动化,肯定少不了手机(真机)或者模拟器。模拟器推荐使用 “雷电”,“夜神”,等等。雷电可以自动发现并连接,比较方便。

手机需要使用数据线,打开开发者调试模式,进行连接等操作。

关于adb常用命令的操作包括如何连接手机,之前写过一个帖子:https://www.cnblogs.com/gancuimian/p/15561480.html

6,还需要一个要测试的程序 apk,也就是测试包。注意是测试包,不是应用商店下载的app程序,因为测试包一般都开启了 webview模式,如果未开启,可以让自家开发开启一下方可顺畅执行自动化脚本。

7,注意:如果adb版本过低,使用appium操作手机网页(H5)时会报错,记得升级 platform-tools 目录下的 adb文件。详细升级操作见:https://www.cnblogs.com/gancuimian/p/16557960.html

8,app又分为 原生页面和H5页面,通过 appium是无法定位到 H5 页面的元素的,所以还要下载一个 UC开发者工具 ;何为 uc开发者工具,可以参考:http://wjhsh.net/Sammy-chen-p-10032703.html

 

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2164754.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

「漏洞复现」某徳知识产权管理系统 UploadFileWordTemplate 文件上传漏洞

0x01 免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删…

collections.defaultdict(list)和一般的dict()有什么区别

文章目录 collections.defaultdict()dict() collections.defaultdict() mp collections.defaultdict(list) 是在Python中创建一个特殊类型的字典,称为默认字典(defaultdict)。这行代码的含义和作用如下: collections 是Python的…

基于python+spark的外卖餐饮数据分析系统设计与实现(含论文)-Spark毕业设计选题推荐

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…

vue props 接收函数 function

父组件: 子组件: props:{afterLoad: {type: Function},}

C++(9.25)

stack: #include <iostream> using namespace std; class my_stack { private:int* data; // 动态数组&#xff0c;用于存储栈的元素int len; // 当前栈中元素的个数int size; // 栈的最大容量public:// 默认构造函数&#xff0c;初始化容量为 10my_st…

mini-lsm通关笔记Week2Day3

项目地址&#xff1a;https://github.com/skyzh/mini-lsm 个人实现地址&#xff1a;https://gitee.com/cnyuyang/mini-lsm Summary 在本章中&#xff0c;您将&#xff1a; 实现tiered合并策略并在压缩模拟器上对其进行模拟。将tiered合并策略纳入系统。 我们在本章所讲的tier…

车载网络测试实操源码_使用CAPL脚本实现安全访问解锁,并模拟各种测试场景

系列文章目录 使用CAPL脚本解析hex、S19、vbf文件 使用CAPL脚本对CAN报文的Counter、CRC、周期、错误帧进行实时监控 使用CAPL脚本模拟发送符合协议要求(Counter和CRC)的CAN报文 使用CAPL脚本控制继电器实现CAN线、电源线的通断 使用CAPL脚本实现安全访问解锁 使用CAPL脚本实现…

IDEA忽略node_modules减少内存消耗,提升索引速度

IDEA忽略node_modules减少内存消耗&#xff0c;提升索引速度 简介 在后端开发中&#xff0c;IDEA 在运行前端代码时&#xff0c;频繁扫描 node_modules 文件夹会导致高内存消耗和慢索引速度&#xff0c;甚至可能会导致软件卡死。为了改善这一问题&#xff0c;可以按照以下步骤…

STM32基础学习笔记-USART外设面试基础题3

第三章、USART 常见问题 通讯定义 &#xff1f;通讯分类 &#xff08;有无时钟源、通讯方式、传输方向&#xff09;&#xff1f; 波特率的本质&#xff1a;隐形的时钟 电平转换 &#xff1f;TTL、COMS、RS232、RS485、USB电平标准 &#xff1f; STM32串口与RS-232通讯 &…

《热血江湖》v23巅峰对决游戏程序(真端+最新官方版本)

《热血江湖》v23巅峰对决游戏程序&#xff08;真端最新官方版本&#xff09; 下载地址&#xff1a; 通过网盘分享的文件&#xff1a;【游戏】《热血江湖》v23巅峰对决游戏程序&#xff08;真端最新官方版本&#xff09; 链接: https://pan.baidu.com/s/18svlGuFnPM9ccwEAb7oBMw…

肺结节检测-目标检测数据集(包括VOC格式、YOLO格式)

肺结节检测-目标检测数据集&#xff08;包括VOC格式、YOLO格式&#xff09; 数据集&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1hz3Y6WgWoS3Gubsw_83WnA?pwdaon1 提取码&#xff1a;aon1 数据集信息介绍&#xff1a; 共有 1180 张图像和一一对应的标注文件 标注…

输出不能被3整除的数-C语言

1.问题&#xff1a; 统计0~100之间的不能被3整除的数。 2.解答&#xff1a; 对100-200之间的每一个数进行遍历&#xff0c;如果不能被3整除&#xff0c;就将此数输出&#xff0c;若能被3整除&#xff0c;就不输出此数。 3.代码&#xff1a; #include<stdio.h>//头文件…

图像超补全(Outpainting)技术的前沿模型与数据集资源汇总

“lmage outpainting”这一概念是由斯坦福大学 CS230 课程的 Mark Sabini 等人提出&#xff0c;相较于图像修复技术&#xff0c;lmage outpainting 更进一步&#xff0c;能够从给定的图像片段中“补全”出缺失的外延部分&#xff0c;以精妙的方式补全画面&#xff0c;从而构建出…

基于实验的低光照图像增强方法综述

这篇论文的标题是《An Experiment-Based Review of Low-Light Image Enhancement Methods》&#xff0c;作者包括Wencheng Wang、Xiaojin Wu、Xiaohui Yuan 和 Zairui Gao。论文主要回顾了过去几十年中发展的低光照图像增强技术的主要技术。 以下是论文的详细内容概述&#xf…

Flutter中很有意思的Future

最近在使用Flutter来开发完全免费开放的E6开发平台对应的手机app客户端。 由于Flutter基于Dart语言开发&#xff0c;而Dart具有一个非常有趣的特性&#xff1a;Future&#xff0c;如果一个方法如果被定义为Future&#xff0c;意味着它可以被异步调用&#xff0c;这一特性对页面…

用于多模态MRI重建的具有空间对齐的深度展开网络|文献速递--基于多模态-半监督深度学习的病理学诊断与病灶分割

Title 题目 Deep unfolding network with spatial alignment for multi-modal MRI reconstruction 用于多模态MRI重建的具有空间对齐的深度展开网络 01 文献速递介绍 磁共振成像&#xff08;MRI&#xff09;因其无创性、高分辨率和显著的软组织对比度&#xff0c;已成为广…

算法记录——链表

2.链表 2.1判断是否是回文链表 1.方法一&#xff1a;利用栈反转链表 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode…

IO(输入输出流)

1.IO a.介绍 i.IO是指Input和Output&#xff0c;即输入和输出&#xff0c;以内存为中心&#xff1a; 1.Input是指从外部读入数据到内存。 2.Output是指把数据从内存输出到外部。 ii.IO流是一种顺序读写数据的模式&#xff0c;它的特点是单向流动。数据类似自…

【AIGC】ChatGPT提示词解析:如何生成爆款标题、节日热点文案与完美文字排版

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | ChatGPT 文章目录 &#x1f4af;前言&#x1f4af;情绪化的吸睛爆款标题提示词使用方法 &#x1f4af;紧跟节日热点选题文案提示词使用方法 &#x1f4af;高效文字排版技巧提示词使用方法 &#x1f4af;小结 &#x1f4af…

python-获取浏览器静态/动态素材

f12浏览器中 1&#xff1a;静态爬取 2.动态资源图片获取。斗鱼 3获取视频-抖音 一长串&#xff0c;最后一个http就是视频