一、环境准备(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. PDF解析。。。

    解析出PDF中的文字.用项目名称作Key取对应的值.. 正则匹配 .....:..\n

  2. Linux命令下,cp,rm,mv命令的使用

    Linux命令行下的复制.删除与移动:cp,rm,mv cp(copy)复制        cp这个命令的用途很多,除了单纯的复制之外,还可以创建链接文件对比两文件的新旧而予以更新,        以 ...

  3. 2、手把手教React Native实战之从React到RN

    ###React简介 RN是基于React设计,了解React有助于我们开发RN应用: React希望将功能分解化,让开发变得像搭积木一样,快速而且可维护 React主要有如下3个特点: *作为UI( ...

  4. @RequestParam 注解

    @RequestParam 注解org.springframework.web.bind.annotation.RequestParam注解类型用于将指定的请求参数赋给方法中的形参.使用@Reques ...

  5. IOS控件:WebView移动网站导航

    #import <UIKit/UIKit.h> // 模板默认引入包含程序需要使用“类”的框架,即 Foundation.h头文件,使它包含在程序中 #import <Foundat ...

  6. Android 中替代 sharedpreferences 工具类的实现

    Android 中替代 sharedpreferences 工具类的实现 背景 想必大家一定用过 sharedpreferences 吧!就我个人而言,特别讨厌每次 put 完数据还要 commit. ...

  7. CAS SSO单点登录框架介绍

    1.了解单点登录  SSO 主要特点是: SSO 应用之间使用 Web 协议(如 HTTPS) ,并且只有一个登录入口. SSO 的体系中有下面三种角色: 1) User(多个) 2) Web 应用( ...

  8. jquery动态生成html代码绑定事件

    今天工作中需要在页面动态生成html代码,但发现新生成的代码的click事件失效了(非动态生成的代码已经绑定了click事件),于是在网上找了很多解决办法,很多都比较复杂,且使用的jquery都比较老 ...

  9. libevent(了解)

    1 前言 Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关文章也不少.写这一系列文章的用意在于,一则分享心得:二则对libevent代码和设计思想做系统的.更深层次的分析, ...

  10. iOS中的armv6、armv7、armv7s

    armv6.armv7.armv7s是arm CPU的指令集,原则上是向下兼容的,如:iPhone4sCPU支持armv7,但它会兼容armv6,只是使用armv6指令可能无法充分发挥它的特性.iph ...