appium Windows系统环境搭建

一、安装nodes

先看看电脑有没有安装node.js,

在cmd中输入 node -v

3086709-2da87716b8ada3fd.png

https://nodejs.org/en/download/ node.js下载
3086709-e5b5569a61f8c9ac.png

安装之后在cmd中输入 node -v
3086709-87cd919cab7cee70.png

二、安装Android SDK

为了方便 直接下载并安装 Android Studio


3086709-64a0fecb5d6dbab9.png

设置ANDROID_HOME 系统变量为你的 Android SDK 路径,并把tools和platform-tools两个目录加入到系统的 Path路径里。

变量: ANDROID_HOME

值: D:\android-sdk

设置: Path

值: %ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

三、安装jdk

下载jdk安装包,并安装,依照下面的方法配置环境变量

变量: JAVA_HOME

值: java/jdk的路径 (C:\Program Files\Java\jdk1.7.0_51)

变量: classpath

值: %JAVA_HOME%\lib;

设置: Path

值: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

测试环境安装成功:运行cmd,输入java -version 如果成功则出现java信息:

3086709-4e9d5b8c8208f24b.png

四、安装appium

直接到官网http://appium.io下载appium 客户端,并安装,双击就可以出现下面这个页面

3086709-dfe0a54a3514eb5d.png

点击Android 标识,对程序进行设置,点击右上方的三角形,启动appium,当出现welcome to Appium的时候点击放大镜,可以启动元素定位页面。

启动元素定位的时候一定要确保电脑连接了手机或打开了模拟器。

对于设备的id,可以在cmd中输入 cmd devices 就可以获得设备的id进行配置。

五、python配置

1.下载python 2.7

【链接】DownloadPython

https://www.python.org/downloads/

在path中配置 python的路径

2.【链接】setuptools30.2.0

https://pypi.python.org/pypi/setuptools 下载setuptools,解压,cmd中cd到setup tools文件夹,然后python setup.py 运行。

此步骤是方便python在cmd中安装第三方插件。

3.直接到官网http://appium.io下载python-client-master,解压后,cmd中cd到setup tools文件夹,然后python setup.py 运行。

4.下载解释器

在网上下载一个Pycharm,方便编写python脚本。

六、写完脚本后,python + 测试脚本,即可运行测试脚本,

但是前提是:appium首先是启动的,Android配置是正确的,设备是开启的。

如果没有配置错误,现在就可以运行测试脚本了。

Appium安装:

1.安装包点击安装、命令安装
命令安装前置条件:
    1、安装node.js,官网下载安装: https://www.runoob.com/nodejs/nodejs-install-setup.html
    2、安装完运行npm命令:npm 或者 node -v
    3、安装cnpm : npm install -g cnpm --registry==https://registry.npm.tao.org
    4、安装appium:cnpm install -g appium
    5、启动appium:appium
    6、关闭appium:Ctrl + C 

Appium python库安装命令:pip install Appium-Python-Client

  • 获取app包名和启动名(手机必须打开对应app):
    adb shell dumpsys window windows | grep mFocusedApp (Mac和Linux用grep,win使用findstr,如:findstr usedApp)获取到对应结果,/斜杠之前到空格是包名,斜杠之后到空格是启动名
adb命令:
安装程序:adb install 文件路径地址.apk
卸载程序:adb uninstall 包名
获取包名(package)界面名(activity,也叫启动名):打开应用-adb shell dumpsys windows | findstr usedApp
发送文件到手机:adb push 电脑文件路径 手机文件路径
获取app启动时间: adb shell am start -w 包名/启动名
    ThisTime: 该界面启动耗时
    TotalTime: ThisTime + application应用等待资源启动时间
    WaitTime: TotalTime + 系统资源启动时间
获取手机日志:adb logcat
获取当前电脑已经连接设备和设备号:adb devices
#前置代码,获取driver  
desires_caps = {}
    desires_caps['platformName'] = 'Android'  # 必填
    desires_caps["platformVersion"] = '5.1'  # 测试设备版本号,必填
    desires_caps['deviceName'] = '192.168.135.103:5555'  # 设备名,必填,不为空就可以
    # desires_caps['appPackage'] = 'com.android.settings'  # 启动包名
    # desires_caps['appActivity'] = '.Settings'  # 启动名
    desires_caps['appPackage'] = page.appPackage  # 启动包名
    desires_caps['appActivity'] = page.appActivity  # 启动名
    # 如果输入中文不好使需要加上下面两行
    desired_caps["unicodeKeyboard"] = True
    desired_caps["resetKeyboard"] = True
    # 驱动 从webdriver的Remote类里传入两个参数(一个是appium节点,hub地址"字符串",可按着Ctrl进入Remote拷贝;另一个是启动参数,字典)
    appdriver = appium.webdriver.Remote('http://127.0.0.1:4723', desires_caps)  # 连接本机Appium服务,以继续以后的操作
  • 在脚本中启动其他APP
    driver.start_activity(app_package="", app_activity="")

  • 在脚本中获取APP包名和界面名
    driver.current_package
    driver.current_activity

  • 安装卸载以及判断是否安装
    driver.install_app("apk路径")
    driver.remove_app("应用程序包名")
    driver.is_app_installed("应用程序包名")

  • 将应用置于后台,参数传入秒
    driver.background_app(10)
    热启动:进入后台在回到前台。关机再开这种属于冷启动

  • 发送文件到手机,或手机文件发送到电脑:
    adb push 电脑端文件路径 手机端的路径
    比如:adb push D:\新建文件夹\笔记\appium\appium.txt /sdcard/emulated/0/files

  • 查看手机运行日志:adb logcat

  • 获取app启动时间: adb shell am start -w 包名/启动名
    ThisTime: 该界面启动耗时
    TotalTime: ThisTime + application应用等待资源启动时间
    WaitTime: TotalTime + 系统资源启动时间

©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341

推荐阅读更多精彩内容