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 入门的更多相关文章

  1. appium入门

    前语:学习需要总结,或许有些知识自己存在偏差,但是能总结出来就会更加加深所学知识 1.       环境变量配置 必备软件安装: jdk1.6.0 android-sdk python:2.7(3.6 ...

  2. Appium入门示例(python)

    安装Python依赖 pip3.4 install nose pip3.4 install selenium pip3.4 install Appium-Python-Client 运行测试用例and ...

  3. Appium入门示例(Java)

    一.使用Eclipse直接创建案例工程 1.打开Eclipse,[File]-->[New]-->[Project] 2.选择[Java Project]-->[Next] 3.输入 ...

  4. Appium入门(9)—— Appium API

    摘自:http://www.testclass.net/appium/appium-base-api-01/ 1.安装: installApp() driver.installApp("d: ...

  5. Appium入门(8)__控件定位

    部分摘自:http://www.testclass.net/appium/appium-base-find-element/ appium 通过 uiautomatorviewer.bat 工具来查看 ...

  6. Appium入门(7)__Appium Desired Capabilities

    Desired Capabilities 是由多个键值对组成,代表移动设备相关信息.由Appium Client向Appium Server发送. 但无论Appium Client使用何种语言,最终是 ...

  7. Appium入门(6)__appium-desktop安装

    部分摘自:http://www.testclass.net/appium/appium-base-desktop/ Appium-Server主要用来监听移动设备,然后将不同编程语言编写的 appiu ...

  8. Appium入门(5)__ Appium测试用例(1)

    步骤为:启动AVD.启动Appium.写用例(python).执行 一.启动Android模拟器                   二.启动Appium Server 双击appium图标启动,配置 ...

  9. Appium入门(4)__ Appium Client安装

    打算使用 Python 语言编写 appium 自动化测试脚本 一.前提: 1.安装Python语言 到Python官网下载最新版本:https://www.python.org/ 2.安装Pytho ...

  10. Appium入门(3)__ Appium Server安装

    安装Appium 1.下载并安装:https://bitbucket.org/appium/appium.app/downloads/ 2. 系统变量PATH 增加 C:\Program Files ...

随机推荐

  1. Linux防火墙部署与配置

    Linux防火墙部署与配置 1. 实验概述 Linux作为网关,搭建小型局域网,在此基础上进行实验,了解Linux防火墙的构成.NAT和包过滤配置方法等. 2. 实验环境 网络大致结构如图2-1所示, ...

  2. MyBatis的使用三(在sql语句中传值)

    本文主要介绍在mybatis中如何在sql语句中传递参数 一. #{ } 和 ${ } 1. #{ } 和 ${ }的区别 #{ }是预编译处理 ==> PreparedStatement ${ ...

  3. Selenium Webdriver驱动自管理

    Webdriver驱动自管理 背景 在selenium自动化中,驱动和浏览器有一定的对应关系,以最常见的chrome和firefox为例. chrome 要求比较严格. 比如在地址栏输入chrome: ...

  4. Python 发展趋势:与 Rust 深度融合、更易于编写 Web 应用

    大家好,我是猫哥,好久不见!2022 年末的时候,我不可避免地阳了,借着身体不舒服就停更了,接踵而至的是元旦和春节假期,又给自己放了假,连年终总结也鸽了,一懈怠就到了 2 月中旬-- 现在是我家娃出生 ...

  5. 初探富文本之CRDT协同算法

    初探富文本之CRDT协同算法 CRDT的英文全称是Conflict-free Replicated Data Type,最初是由协同文本编辑和移动计算而发展的,现在还被用作在线聊天系统.音频分发平台等 ...

  6. 《Terraform 101 从入门到实践》 Terraform在公有云GCP上的应用

    <Terraform 101 从入门到实践>这本小册在南瓜慢说官方网站和GitHub两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看. Terraform支持的公有 ...

  7. JAVA虚拟机20-基于栈的解释器执行过程示例

    1.准备代码 public int calc() { int a = 100; int b = 200; int c = 300; return (a + b) * c; } 2.使用javap -v ...

  8. .NET周报 【2月第2期 2023-02-11】

    国内文章 SQLSERVER的truncate和delete有区别吗? https://mp.weixin.qq.com/s/wTIeW8rjj3cRzoaQcg2sOw 在面试中我相信有很多朋友会被 ...

  9. .net core 从(本地)服务器获取APK文件并解析APK信息

    1.apk解析除了使用客户端利用aapt.exe.unzip.exe开发客户端解析外,还可以直接利用服务进行解析 /// <summary> /// 从本地服务器获取APK文件并解析APK ...

  10. Ajax局部修改页面使用html()内置标签

    今天在写javaweb项目时遇到的一个小问题,在Ajax修改页面时,需要修改一串文字同时部分修改样式, 在对比了text()和html()后,在此记录 text:(无法内嵌标签) html:(可以内嵌 ...