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 ...
随机推荐
- Linux防火墙部署与配置
Linux防火墙部署与配置 1. 实验概述 Linux作为网关,搭建小型局域网,在此基础上进行实验,了解Linux防火墙的构成.NAT和包过滤配置方法等. 2. 实验环境 网络大致结构如图2-1所示, ...
- MyBatis的使用三(在sql语句中传值)
本文主要介绍在mybatis中如何在sql语句中传递参数 一. #{ } 和 ${ } 1. #{ } 和 ${ }的区别 #{ }是预编译处理 ==> PreparedStatement ${ ...
- Selenium Webdriver驱动自管理
Webdriver驱动自管理 背景 在selenium自动化中,驱动和浏览器有一定的对应关系,以最常见的chrome和firefox为例. chrome 要求比较严格. 比如在地址栏输入chrome: ...
- Python 发展趋势:与 Rust 深度融合、更易于编写 Web 应用
大家好,我是猫哥,好久不见!2022 年末的时候,我不可避免地阳了,借着身体不舒服就停更了,接踵而至的是元旦和春节假期,又给自己放了假,连年终总结也鸽了,一懈怠就到了 2 月中旬-- 现在是我家娃出生 ...
- 初探富文本之CRDT协同算法
初探富文本之CRDT协同算法 CRDT的英文全称是Conflict-free Replicated Data Type,最初是由协同文本编辑和移动计算而发展的,现在还被用作在线聊天系统.音频分发平台等 ...
- 《Terraform 101 从入门到实践》 Terraform在公有云GCP上的应用
<Terraform 101 从入门到实践>这本小册在南瓜慢说官方网站和GitHub两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看. Terraform支持的公有 ...
- JAVA虚拟机20-基于栈的解释器执行过程示例
1.准备代码 public int calc() { int a = 100; int b = 200; int c = 300; return (a + b) * c; } 2.使用javap -v ...
- .NET周报 【2月第2期 2023-02-11】
国内文章 SQLSERVER的truncate和delete有区别吗? https://mp.weixin.qq.com/s/wTIeW8rjj3cRzoaQcg2sOw 在面试中我相信有很多朋友会被 ...
- .net core 从(本地)服务器获取APK文件并解析APK信息
1.apk解析除了使用客户端利用aapt.exe.unzip.exe开发客户端解析外,还可以直接利用服务进行解析 /// <summary> /// 从本地服务器获取APK文件并解析APK ...
- Ajax局部修改页面使用html()内置标签
今天在写javaweb项目时遇到的一个小问题,在Ajax修改页面时,需要修改一串文字同时部分修改样式, 在对比了text()和html()后,在此记录 text:(无法内嵌标签) html:(可以内嵌 ...