一、环境准备(windows)

1、安装Microsoft .NET Framework 4.5

  双击运行如下文件:net4.5.1.exe

2、安装node-v6.11.4-x64.msi

  双击运行,安装appium的依赖环境,node.js

3、安装appium

  官方网站下载最新的appium版本:http://appium.io/

  双击运行 appium-desktop-Setup-x.x.x.exe。

4、安装JDK

  安装JDK1.8及以上版本。

5、安卓ADT工具

  双击解压 adt-bundle-windows-x86_64-20140702.zip

  配置环境变量:

  添加ANDROID_HOME环境变量,配置sdk根目录。

  ANDROID_HOME=D:\software\adt-bundle-windows-x86_64-20140702\sdk

  在PATH变量中添加adb所有的目录:

  ;%ANDROID_HOME%\platform-tools

  在path变量中添加aapt的路径,后面通过adb查找包名和入口页面时会用到

  ;D:\Programs\adt-bundle-windows-x86_64-20140702\sdk\build-tools\android-4.4W

  检测:

  进入cmd命令行,输入adb version

  能够正常显示adb的版本就okay.

6、安装夜神模拟器

  夜神模拟器安装好之后,adb命令可能识别不到设备,此时,需要

  1.拷贝 adb安装目录 D:\\Program\adt-bundle-windows-x86_64-20140702\sdk\platform-tools\下的adb.exe

  2.将第一条说所的adb.exe更名成nox_adb.exe

  3.将第2条的nox_adb.exe 覆盖 夜神安装目录下 D:\Program Files\Nox\bin\下的nox_adb.exe

7、安装appium python客户端

  使用python的pip命令,直接在线安装:

  pip install Appium-Python-Client

二、向appium service发送命令需要包含的内容

1、哪个平台:android、ios

2、哪个os版本:

3、哪个app: 包名  

4、入口页面:activity 

  通过aapt命令可以查看包名和入口页面

  aapt dump badging apk在电脑中的路径

  例:aapt dump badging D:\apk\sina.apk

  在结果中找包名  package: name='com.sina.weibo'

    入口页面:launchable-activity: name='com.sina.weibo.activity.WelcomeActivity'

三、写python

from appium import webdriver

desired_cap = {}
desired_cap["platformName"] = "Android"
desired_cap["platformVersion"] = "5.1"
desired_cap["deviceName"] = "Android Emulator"
desired_cap["appPackage"] = "com.sina.com"
desired_cap["appActivity"] = "com.sina.com.activity.WelcomeActivity" # 连接appium service,并告诉它启动哪个平台的哪个app
webdriver.Remote("'http://127.0.0.1:4723/wd/hub'", desired_cap)

  

四、运行

  1.appium service必须启动

  2.adb能够识别到设备

  3.运行python代码

app自动化测试-appium的更多相关文章

  1. 篇4 安卓app自动化测试-Appium API进阶

    篇4                 安卓app自动化测试-Appium API进阶 --lamecho辣么丑 1.1概要 大家好! 我是lamecho(辣么丑),今天是<安卓app自动化测试& ...

  2. app自动化测试Appium+python

    一.node.js安装 https://nodejs.org/en/download/ ##一直下一步 ###cmd查看 二.  .NET Framework安装 https://www.micros ...

  3. app 自动化测试 Appium+python可以运行的代码

    Appium

  4. app 自动化测试 Appium+Java可以运行的代码

    地址:http://www.cnblogs.com/sunny-sl/p/6520465.html

  5. 篇2 安卓app自动化测试-初识python调用appium

    篇2              安卓app自动化测试-初识python调用appium --lamecho辣么丑 1.1概要 大家好!我是lamecho(辣么丑),上一篇也是<安卓app自动化测 ...

  6. Python appium搭建app自动化测试环境

    appium做app自动化测试,环境搭建是比较麻烦的. 也是很多初学者在学习app自动化之时,花很多时间都难跨越的坎. 但没有成功的环境,就没有办法继续后续的使用. 在app自动化测试当中,我们主要是 ...

  7. 基于appium的app自动化测试框架

    基于appium框架的app自动化测试 App自动化测试主要难点在于环境的搭建,appium完全是基于selenium进行的扩展,所以app测试框架也是基于web测试框架开发的 一.设备连接 (即构建 ...

  8. app 自动化测试 - 多设备并发 -appium+pytest+ 多线程

    1.appium+python 实现单设备的 app 自动化测试 启动 appium server,占用端口 4723 电脑与一个设备连接,通过 adb devices 获取已连接的设备 在 pyth ...

  9. 基于Appium的APP自动化测试基础--美团APP的实例

    转:https://blog.csdn.net/Tigerdong1/article/details/80159156 前段时间用一种流行语言,一个主流工具,一个实用框架,写了一个美团app自动化测试 ...

随机推荐

  1. 用ChemDraw画3D图的方法

    在绘制化学图形的时候,很多的用户都会发现很多的图形都是三维的,这个时候就需要找一款能够绘制3D图形的化学绘图软件.ChemOffice 15.1是最新的化学绘图工具套件,总共有三个组件,其中ChemD ...

  2. python数据表的合并(python pandas join() 、merge()和concat()的用法)

    merage# pandas提供了一个类似于关系数据库的连接(join)操作的方法<Strong>merage</Strong>,可以根据一个或多个键将不同DataFrame中 ...

  3. Integer自动装拆箱

    public static void main(String[] args) { Integer a1 = 1; Integer a2 = 1; Integer b1 = 127; Integer b ...

  4. Eclipse获取签名证书的SHA1

    签名后的获取方式 :http://jingyan.baidu.com/article/3ea51489da3bc252e71bba59.html 未签名的获取方式:http://www.th7.cn/ ...

  5. spring中关于FeignClient的错误 QueryParam.value() was empty on parameter 1

    现创建一个feignClient的接口,在其他服务调用改client时发现服务启动失败错误日志如下: org.springframework.beans.factory.BeanCreationExc ...

  6. 因为td设置relative导致td的border问题

    在ff下因为td设置relative导致td的border问题:其实是个老问题了~碰到了拿出来记录下 td 中添加如下样式 background-clip: padding-box

  7. Win10-64位 免安装版Mysql8下载安装运行

    今天忙活了很久去下载安装Mysql,感觉网上的那些教程怎么都对不上呢,很奇怪,不过我乱点一通至少能用了,先凑和着用吧... 记录一下, 要是不对的,以后再修改...windows10系统 2018-5 ...

  8. visual studio 下 C++生成dump文件

    1 lib配置 项目-->属性-->配置属性-->链接器-->输入-->附加依赖项 增加dbghelp.lib 2 头文件 #include <imagehlp.h ...

  9. mysql delete 多表

    DELETE u.*,acu.*,alu.* FROM user u, accountuser acu ,algouser alu WHERE u.userId=11 and acu.userID=1 ...

  10. attributes["wv"].nodeValue

    w 获取自定义属性的值 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...