(一) 简介

Appium是一个开源的自动化测试框架,可以用来测试基于iOS、Android和Firefox OS平台的原生和混合应用。该框架使用Selenium Webdriver,在执行测试时和Selenium server通信的是JSON Wire Protocol。Appium允许我们使用,甚至扩展现有的Selenium Webdriver框架来构建测试脚本。

使用Appium,selenium是一定要安装的 pip install selenium

(二) 需要配置的环境

 操作系统WIN7/WIN10都行,其他没试

1、      安装JDK (JDK安装就不说了,我的是1.8,其他版本的没试过)

2、      安装NODE.JS (appium是基于node.js实现的)

3、      安装appium

4、      安装Android SDK(用真机测试并且不使用appt、adb工具的话可忽略这步)

5、      pip install Appium-Python-Client

(三) 安装node.js

https://nodejs.org/en/download/

运行一直下一步就行了,安装完成后,path变量加上node.js的安装目录F:\Python\android\nodejs ,可以运行npm -version 看下成不成功

(四) 安装appium

https://github.com/appium/appium-desktop/releases/tag/v1.6.1

下面2个都可以,加web的应该是要联网安装的。一直下一步就行了,不需要配置什么环境变量。

安装完后直接启动

(五) 安装安卓 SDK

(1)http://www.androiddevtools.cn/ ,安装文件EXE或压缩包,下载其中一个

安装完毕后,配置环境变量

新增系统变量: 变量名:ANDROID_HOME   值:F:\Python\android\android-sdk (自己SDK的安装目录)

只用appt、adb工具的话,运行SDK Manager.exe,把必须安装的工具安装就行了(启动的时候SDK会默认选中,直接安装就行了)。安装完毕后,把环境变量配置好就行了,后面的都可以忽略。(我是直接用真机测试,模拟器运行APP各种问题)

path变量中增加 :%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;%ANDROID_HOME%\build-tools\27.0.3;(这个27.0.3看自己的安装目录,不一定相同)

配置好后,可以在cmd中运行下 adb  和 aapt  ,能用就OK

(2)https://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager-intel-haxm  下载haxm,下载好后直接运行安装就行了(不用安卓模拟器可以不安装,这个主要是解决安装模拟器运行慢的问题)

(3)创建安卓模拟器

Android SDK  manager中安装需要的环境

Tools-Manager AVD启动 AVD,或者直接点击安装目录下的AVD Manager 启动,创建一个模拟器,然后启动 start。

(六)  示例

记得安装 pip install Appium-Python-Client

这段代码就是启动博客园客户端并关闭。暂时感觉appium的元素定位不太友好

 from appium import webdriver
import time
desired_caps = {
'platformName':'Android',
#用真机的时候,这个参数deviceName没什么用,但是还是必须要有这个参数,值的话随便填就行了
'deviceName':'HUAWEI',
'platformVersion':'7.0',
'appPackage':'com.rae.cnblogs',
'appActivity':'com.rae.cnblogs.activity.LauncherActivity',
'unid':'填写真机unid的值,下面说明怎么获取了',
'noReset':'true',
}
driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
time.sleep(3)
driver.quit()

https://appium.io/docs/cn/writing-running-appium/caps/index.html  这里可以查看参数说明

用上面的代码得安装博客园的Android  APP才行

(七)获取package、activity、devicename、unid

通过appt工具获取package、activity,cmd运行  aapt dump badging  xxx.apk

获取devicename、unid,cmd 运行  adb devices(记得手机开启usb调试再运行这个命令) ,用真机的时候,下面这个位置的东西就是UNID参数的值,使用模拟器的话就是deviceName参数的值

python appium笔记(一):appium android环境配置及示例的更多相关文章

  1. [Android] 环境配置之正式版Android Studio 1.0

    昨天看见 Android Studio 1.0 正式版本发布了:心里挺高兴的. 算是忠实用户了吧,从去年开发者大会一开始出现 AS 后就开始使用了:也是从那时开始就基本没有用过 Eclipse 了:一 ...

  2. [Android] 环境配置之基础开发环境(SDK/Android Studio)(转)

    [Android] 环境配置之基础开发环境(SDK/Android Studio)   博客: blog.csdn.net/qiujuer 网站: www.qiujuer.net 开源库: Geniu ...

  3. cocos2dx - android环境配置及编译

    接上一节内容:cocos2dx - 伤害实现 本节主要讲Android环境配置及编译 在第一节中setup.py的配置里,我们没有配置对应的ndk,sdk,ant的路径,在这里需要先配置好环境变量. ...

  4. 【React Native开发】React Native For Android环境配置以及第一个实例(1)

    年9月15日也公布了ReactNative for Android,尽管Android版本号的项目公布比較迟,可是也没有阻挡了广大开发人员的热情.能够这样讲在2015年移动平台市场上有两个方向技术研究 ...

  5. [Android] 环境配置之Android Studio开发NDK

    分类:Android环境搭建 (14351)  (20) ========================================================作者:qiujuer博客:bl ...

  6. Android环境配置(Eclipse全开发环境下载)

    Android环境配置 前期准备 Android环境的Eclipse: 网站链接:https://www.runoob.com/w3cnote/android-tutorial-eclipse-adt ...

  7. Android环境配置之正式版AndroidStudio1.0

    昨天看见 Android Studio 1.0 正式版本发布了:心里挺高兴的. 算是忠实用户了吧,从去年开发者大会一开始出现 AS 后就开始使用了:也是从那时开始就基本没有用过 Eclipse 了:一 ...

  8. OpenCV On Android环境配置最新&最全指南(Android Studio篇)

    本文是从本人简书上搬运而来,属本人原创,如有转载,请注明出处:http://www.jianshu.com/p/6e16c0429044 简介 本文是<OpenCV On Android环境配置 ...

  9. OpenCV On Android环境配置最新&最全指南(Eclipse篇)

    简介 本教程是经过本人多次踩坑,并参考网上众多OpenCV On Android的配置教程总结而来,尽希望能帮助学习移动图像处理的朋友们少走弯路.这也是本人第一次在简书上发布文章,如有不足,希望各位d ...

随机推荐

  1. 如何用Python来处理数据表的长宽转换(图文详解)

    不多说,直接上干货! 很多地方都需用到这个知识点,比如Tableau里.   通常可以采取如python 和 r来作为数据处理的前期. Tableau学习系列之Tableau如何通过数据透视表方式读取 ...

  2. 如果非得了解下git系统... - 实践篇

    git的定义是一个内容寻址文件系统.内容.寻址.文件.系统,该来的总会来的… 本文旨在通过实践来介绍.git文件夹中的目录及文件功能,属git基础知识.但在此基础上可解决各git使用过程中可能遇到的问 ...

  3. java命令行指定log4j2

    java -Dlog4j.configurationFile=directory/file.xml

  4. OpenKM6.2.5的安装和配置详细过程(附启动失败原因)

    继上文“解决OpenKM启动失败的详细历程”过后,这几天一直在使用OpenKM,OpenKM使用起来很简单,但是一些相关配置什么的中文资料较少,且有的资料欠缺正确性,存在误导性,下面就简单将配置过程和 ...

  5. Deep learning with Python 学习笔记(4)

    本节讲卷积神经网络的可视化 三种方法 可视化卷积神经网络的中间输出(中间激活) 有助于理解卷积神经网络连续的层如何对输入进行变换,也有助于初步了解卷积神经网络每个过滤器的含义 可视化卷积神经网络的过滤 ...

  6. 设置tabBar、使用第三方插件和自定义组件使用简单实例

    创建小程序项目进入时填写,因需要用上第三方插件,所以要填上开发者的APPID,前往微信公众平台去注册一个账号获取APPID,在设置=>开发设置可以查看相关appid信息 简单思路 底部导航添加三 ...

  7. 使用并发工具实现 RPC 调用流量控制

    前言 RPC 服务中,每个服务的容量都是有限的,即资源有限,只能承受住给定的网络请求,所以,在设计 RPC 框架的时候,一定要考虑流量控制这个问题.而 Java 中,实现流量控制有很多中方式,今天说 ...

  8. 并发编程 —— ScheduledThreadPoolExecutor

    1. 前言 在前面的文章中,我们介绍了定时任务类 Timer ,他是 JDK 1.3 中出现的,位于 java.util 包下.而今天说的 ScheduledThreadPoolExecutor的是在 ...

  9. MVC实现加载更多

    MVC中实现加载更多 作者 欢醉 关注 2016.01.25 08:48 字数 945 阅读 136评论 0喜欢 2 需要实现的功能: 数据太多想初次加载部分数据,在底部加上“加载更多”按钮 点击后加 ...

  10. 通用的Sql存储过程

    CREATE PROCEDURE [dbo].[P_ProcPager] ( @recordTotal INT OUTPUT, --输出记录总数 ), --表名 ) = '*', --查询字段 ) = ...