(一) 简介

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. c++之window.h

    在c++中引入window.h头文件. Sleep函数,此函数接受一个时间参数,单位是ms.即使得程序在一段时间后继续运行.如下: 在hello输出之后3000ms,才会继续输出world字符串. M ...

  2. SQL Server 2016 需要单独安装 SSMS

    默认安装完 MSSQL 后,不自带 SSMS 的管理工具了,需要的话可以单独安装,貌似更专业了一些. https://msdn.microsoft.com/library/mt238290.aspx ...

  3. [个人项目] echarts 实现数据(tooltip)自动轮播插件

    前言 最近, 工作中要做类似这种的项目. 用到了百度的 echarts 这个开源的数据可视化的框架. 因为投屏项目不像PC端的WEB, 它不允许用户用鼠标键盘等交互. 有些图表只能看到各部分的占比情况 ...

  4. 全网最详细的HA集群的主节点之间的双active,双standby,active和standby之间切换的解决办法(图文详解)

    不多说,直接上干货! 1. HA集群的主节点之间的双standby的解决办法: 全网最详细的Hadoop HA集群启动后,两个namenode都是standby的解决办法(图文详解) 2. HA集群的 ...

  5. JavaScript初探二

    //----------总结01.查找dom元素 document.getElementById();//通过id获取一个dom元素 document.getElementsByClassName() ...

  6. rabbitmq 部署(二进制和rpm)与常用命令

    目录 一 rabbitmq 简介 二 erlang 安装 三 rabbitmq rpm安装 (二进制安装和rpm安装二选一) 四 rabbitmq 二进制安装(rpm 安装和二进制安装二选一) 五 初 ...

  7. SpringMVC之类型转换

    在数据绑定上,SpringMVC提供了到各种基本类型的转换,由前端到后台时,SpringMVC将字符串参数自动转换为各种基本类型.而对于其他,则需要自己编写代码进行转换.本随笔以转换时间类型为例,使用 ...

  8. Linux入门练习2

    export命令用来设置环境变量. 使用单引号时,变量不会被扩展,将依照原样显示.示例: 如果变量未定义过,则什么都不打印: 获得变量值长度 识别当前所使用得shell: 检查是否为超级用户: UID ...

  9. linux下开启、关闭、重启mysql服务

    linux下开启.关闭.重启mysql服务命令 一. 启动1.使用 service 启动:service mysql start2.使用 mysqld 脚本启动:/etc/inint.d/mysql ...

  10. winform窗体 控件【菜单和工具栏控件】【容器控件】

    winform的菜单栏和工具栏    1.ContextMenuStrip   -- 右键菜单     可以绑定在任何一个控件上,添加操作快捷键,并可以设置多层    每行相当于一个按钮,输入-可添加 ...