Appium 入门
Appium安装总体需要以下几个步骤:
安装JDK
官网www.oracle.com去下载安装,尽量下载JDK7及以上的版本。然后去设置环境变量:
在系统变量下新建变量JAVA_HOME变量值指向JDK安装的文件夹 如:C:\Program Files\Java\jdk1.8.0_121
在系统变量下新建变量CLASSPATH 变量值输入 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar
在Path变量里,添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
测试JDK环境配置是否成功:Win键+R键打开运行 输入cmd 回车进入,输入java -version回车,如果出现JDK版本信息则环境配置成功。
安装Android SDK
- 安卓app的自动化 appium server依赖appium sdk
- android studio 包含了android sdk
- 去官网https://developer.android.google.cn/studio 网页下拉到底部的Command line tools only(仅限命令行工具),下载如图:

- 下载完成后解压,在tools目录下的bin目录下,直接再当前路径下进入cmd ==》输入sdkmanager "platfrom-tools" "platforms;android-28" "build-tools;28.0.3" 去执行安装组件。安装过程中,会弹出提示框Accept?(y/N) 一直yes即可。
给Android sdk设置环境变量
- 去电脑系统属性--环境变量--系统变量里 创建ANDROID_HOME 值设置为SDK根目录的路径。
- 将sdk\plafrom-tools\加入到环境变量path中。
验证是否设置成功:运行cmd打开命令提示窗,输入where adb 能够显示出其所在路径即OK。
查看Android_home的环境变量是否正确,可以在tools/bin目录下输入echo %android_home% 能够显示出android sdk安装路径即OK。
安装Appium python client包
直接在命令提示窗口中 输入pip install Appium-Python-Client
另外要确保安装匹配版本的selenium和appium:可以输入pip install seelnium -U
安装Appium
去官网下载appium 下载地址为https://github.com/appium/appium-desktop/releases/tag/v1.18.0-2,我们下载windows版本的。
安装成功后桌面会有用一个紫色的图标。

我们打开Appium,配置默认点击“start server”启动appium-desktop。
配置sdk路径



使用appium查看元素

配置启动信息(这些参数就是你要连接设备的参数)

点击启动会话

启动脚本
# coding=utf-8
from appium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
"""
查看 App的appPackage和appActivity
1. 打开cmd命令窗口
2.在命令窗口中输入,adb logcat>D:/log.txt,输入D盘下
3.运行手机上app应用程序,需要获取到app应用程序
4.Ctrl+c 结束adb命令,打开log.txt文件,搜索:Displayed
"""
# appium服务监听地址
server='http://127.0.0.1:4723/wd/hub'
# app启动参数
desired_caps={
"platformName": "Android",
# 查看 adb devices -l
"deviceName": "HWHLK-H",
"appPackage": "com.tencent.mm",
"appActivity": ".ui.LauncherUI"
} # 驱动
driver = webdriver.Remote(server,desired_caps)
wait = WebDriverWait(driver,30)
# 获取登录按钮
login_btn = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/fam")))
# 点击登录按钮
login_btn.click()
# 获取手机号文本框
phone_text = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/bhn")))
print(phone_text)
# 填写手机号文本框
phone_text.send_keys("18888888888")
Appium 入门的更多相关文章
- appium入门
前语:学习需要总结,或许有些知识自己存在偏差,但是能总结出来就会更加加深所学知识 1. 环境变量配置 必备软件安装: jdk1.6.0 android-sdk python:2.7(3.6 ...
- Appium入门示例(python)
安装Python依赖 pip3.4 install nose pip3.4 install selenium pip3.4 install Appium-Python-Client 运行测试用例and ...
- Appium入门示例(Java)
一.使用Eclipse直接创建案例工程 1.打开Eclipse,[File]-->[New]-->[Project] 2.选择[Java Project]-->[Next] 3.输入 ...
- Appium入门(9)—— Appium API
摘自:http://www.testclass.net/appium/appium-base-api-01/ 1.安装: installApp() driver.installApp("d: ...
- Appium入门(8)__控件定位
部分摘自:http://www.testclass.net/appium/appium-base-find-element/ appium 通过 uiautomatorviewer.bat 工具来查看 ...
- Appium入门(7)__Appium Desired Capabilities
Desired Capabilities 是由多个键值对组成,代表移动设备相关信息.由Appium Client向Appium Server发送. 但无论Appium Client使用何种语言,最终是 ...
- Appium入门(6)__appium-desktop安装
部分摘自:http://www.testclass.net/appium/appium-base-desktop/ Appium-Server主要用来监听移动设备,然后将不同编程语言编写的 appiu ...
- Appium入门(5)__ Appium测试用例(1)
步骤为:启动AVD.启动Appium.写用例(python).执行 一.启动Android模拟器 二.启动Appium Server 双击appium图标启动,配置 ...
- Appium入门(4)__ Appium Client安装
打算使用 Python 语言编写 appium 自动化测试脚本 一.前提: 1.安装Python语言 到Python官网下载最新版本:https://www.python.org/ 2.安装Pytho ...
- Appium入门(3)__ Appium Server安装
安装Appium 1.下载并安装:https://bitbucket.org/appium/appium.app/downloads/ 2. 系统变量PATH 增加 C:\Program Files ...
随机推荐
- DML_修改数据
DML_修改数据 修改数据: 语法: update 表名 set 列名1 = 值1,列名2 = 值2, ... [ where 条件 ] ; 注意: 1. 如果不加任何条件,则会将表中所有记录全部修改 ...
- 在 MBP(Apple M1 Pro)上捣鼓友善 nanoPi R5S——【一、构建 rkdeveloptool】
在种草了很多天之后,最近终于在淘宝下单了友善 nanoPi R5S. 选择友善 nanoPi R5S 有两点主要理由: 1. 自带 EMMC 存储,可以使用 RockChip 提供的 MaskRom ...
- RocketMQ Streams 1.1.0: 轻量级流处理再出发
本文作者:倪泽,Apache RocketMQ committer.RSQLDB/RocketMQ Streams Maintainer 01 背景 RocketMQ Streams是一款基于Rock ...
- drf-day7——认证组件、权限组件、频率组件、过滤排序、分页
目录 一.认证组件 1.1 登录接口 1.2 认证组件使用步骤 1.3 整体代码 1.4认证时cookie的获取方式 二.权限组件 2.1需求分析: 2.2 权限的使用 2.3代码 三.频率组件 3. ...
- chatGPT vscode 体验
体验秘钥 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 多人用可能有点卡,重在体验. 自己(中国)想注册账号如下 步骤一:找到入口 搜索Ope ...
- 【DS】2.1
线性表:c++各种基础操作里面,有&没&避免错的代码额~ #include <stdio.h> void test(int &x){//没有&就没有带回主函 ...
- Dao包 对数据库的操作
//添加 public static int add(Bean1 bean){ String sql = "insert into classtable(classname,teacher, ...
- javaweb画图
最近都在忙期中考试,写博客的频率有点低了,以下是一些基本代码,是王建民老师说的要建立自己的资料库,我直接建的资料库. 画图html <!--定义表格宽度 行距 宽度<tr>行< ...
- C++练习9 函数的重载
函数的重载是用一个函数名定义多个函数,但是这些同名函数的形参列表(参数个数,类型,顺序)必须不同. 函数重载的规则: 1.函数名称必须相同. 2.参数列表必须不同(个数不同.类型不同.参数排列顺序不同 ...
- NuGet私有服务器ProGet Docker搭建和公司中实战用法
一.什么时候需要用到NuGet私有服务器 很多公司中架构师会搭建一个统一的项目基础架构模板,然后全部新项目都会拿这个基础架构来开发新的项目,那架构中就会有很多的中间件,比喻公司内部的封装好的Redis ...