前言

之前总是在找方向,也研究了很多的工具,终于找到了适合自己的一套,打算把学习的过程做一个记录,给自己加深印象,也希望能给其他人一些帮助。

一、工具准备

1、Appium  //  http://appium.io/

2、Genymotion+Oracel VM Virtual  //  http://www.genymotion.net/

3、Python  //https://www.python.org/downloads/

  

二、安装Appium

1、首先,安装node.js // https://nodejs.org/

      按照自己的操作系统进行下载,下载完成后,进行双击安装即可,安装完成后,cmd输入npm,查看是否安装成功

      npm是管理和分发node包的,类似于pip

2、安装Appium

     之前说到npm,在cmd中输入 npm install -g appium    //但是受限于网络,这个基本不会成功

   所以,我们可以直接下载appium     //    https://bitbucket.org/appium/appium.app/downloads/

   根据自己的操作系统进行下载

   

     

   双击appium-installer进行安装,可能会出现缺失.net组件的问题,直接下载组件安装即可

   

三、安装Genymotion环境

  1、安装java, Android环境需要Java的支持,这个就不多说了,参照java的环境配置

  2、下载android sdk,建议直接下载eclispe+android sdk 的集成包,百度搜索关键字 eclipse android 下载   - - 我把下载地址忘记了

  3、下载Genymotion // http://www.genymotion.net/

    Genymotion的下载一定要先注册后,才能下载,下载完成后,直接登录账号(就是之前注册的账号)

      ①可能会出现无法登录的情况,多登录几次吧,毕竟,你懂的

      ②可能出现模拟器无法下载问题,这个问题原因有很多,可以百度,最主要的一个原因是无法联机下载,这个时候就去下载ova包导入虚拟机,实现模拟器的启动

  4、配置Genymotion,Genymotion安装完成后,设置Genymotion,Android SDK使用之前下载的Android SDK目录,保存即可,保存完成后,运行下模拟器,查看能               不能正常启动

    

四、安装python+Appium-Python-client

  下载python后,安装完成后,cmd输入python,查看python是否安装完成

  然后安装Appium-Python-client    cmd 输入pip install Appium-Python-Client

    ①可能出现pip版本过低,安装报错

     下载最新的pip,重新安装一遍,然后再输入pip install Appium-Python-Client

五、demo

  首先,启动模拟器,然后启动Appium,点击android icon 弹出 android settings

  

  然后点击运行

  

  最后通过python编写自动化测试脚本

  

# -*- coding: UTF-8 -*-

from appium import webdriver
import time desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.0'
desired_caps['deviceName'] = 'genymotion_vbox86tp_5.0_141215_182600'
desired_caps['appPackage'] = 'com.android.calculator2'
desired_caps['appActivity'] = '.Calculator'
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
driver.find_element_by_name("").click()
driver.find_element_by_name("+").click()
driver.find_element_by_name("").click()
driver.find_element_by_name("=").click()
time.sleep(2)
driver.quit()

然后直接运行py文件即可

  可能会遇到的问题:

    ① 提示android需要API17及其更高版本的支持,需要升级android

      这个原因是因为你的模拟器版本太低了,换一个高版本一点的就可以了

    ②无法连接到模拟器

      可能是因为你代码中的资源没有配置正确,例如Activity没有写对等等

以上是我整个环境配置的过程,如果有哪里不对或者有疑问的,可以扣扣我

-----------2016.04.19--------------

因为genymotion对于5.0版本及其以上模拟器支持不是很理想,安装软件后无法使用问题

然后Appium又必须API17及其以上,所以建议大家使用4.4版本的,通过ARM扩展,功能基本都能使用,等我找到了5.0的解决方案再来更新

Appium+Python+Genymotion ------环境配置的更多相关文章

  1. appium+python+windows环境配置

    一.安装node.js 1:先找到对于电脑合适的node版本进行下载. 我的云盘node版本是7.8.0.地址如下:https://pan.baidu.com/s/19kcpXhCN1AuJAT9CB ...

  2. appium + python的环境配置_windows

    appium是什么? 1,appium是开源的移动端自动化测试框架: 2,appium可以测试原生的.混合的.以及移动端的web项目: 3,appium可以测试ios,android应用(当然了,还有 ...

  3. Appium + python 自动化测试环境配置

    -------------------------------------------------------------- 1. jdk-8u121-window(32位的就下载32位的,64位的就 ...

  4. Appium+python自动化环境搭建

    一.步骤及环境 环境:Windows 7版本 64位系统(python) 1.jdk安装配置:jdk1.6.0 (64位) 2.android-sdk下载安装:android-sdk_r24.3.4- ...

  5. Linux—CentOS7下python开发环境配置

    CentOS7下python开发环境配置 上一篇博客讲了如何在Centos7下安装python3(https://www.cnblogs.com/zivli/p/9937608.html),这一次配置 ...

  6. python 开发环境配置

    上篇文章配置了虚机基础环境,本篇文章介绍配置python开发环境 配置YUM源 使用国内yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos ...

  7. centos7.0 安装日志--图文具体解释-python开发环境配置

    centos7.0公布之后,就下载了everthing的DVD镜像.今天有时间,所以决定在vbox底下体验一番--- 上图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nk ...

  8. 最简单的VScode Python 开发环境配置以及中文化

    前置条件 Python 3.X(2020年了,建议使用Python3.X版本) 一.下载VSCode VSCode官方下载链接 由于安装过程是中文界面,此处略过. 二.VSCode中文化 不需要配置什 ...

  9. 基于Pycharm的Python开发环境配置

    基于Pycharm的Python开发环境配置 编辑于2020-11-18 Python安装 双击桌面的Python3.x安装包. 勾选Add to path. 方便起见,选择Install now.下 ...

随机推荐

  1. MongoDB基础教程[菜鸟教程整理]

    MongoDB基础教程 ======================================================================================== ...

  2. Python 爬虫:豆瓣电影Top250,包括电影导演、类型、年份、主演

    结果输出到文本文件中. import codecs import requests from bs4 import BeautifulSoup headers={'User-Agent': 'Mozi ...

  3. 个人永久性免费-Excel催化剂功能第49波-标准数据结构表转报表样式结果

    中国的企业信息化,已经过去了20年,企业里也产生了大量的数据,IT技术的信息化管理辅助企业经营管理也已经得到广泛地认同,现在就连一个小卖部都可以有收银系统这样的信息化管理介入.但同时也有一个很现实的问 ...

  4. [POJ 2888]Magic Bracelet[Polya Burnside 置换 矩阵]

    也许更好的阅读体验 \(\mathcal{Description}\) 大意:给一条长度为\(n\)的项链,有\(m\)种颜色,另有\(k\)条限制,每条限制为不允许\(x,y\)颜色连在一起.要求有 ...

  5. wp伪静态网页打开慢之提速方案1s内打开 wp的静态化插件测试

    自上篇文章,我做了伪静态话.可是伪静态访问还是php动态页面,还需要服务端分析如何处理,访问页面时会发现有一个漫长的等待响应的时间.这是打开速度在4s左右.而静态页面则是直接打开,不需要服务器操作,不 ...

  6. mysql协议分析1---报文的格式和基本类型

    navicat 和 mysql 是一对好基友,每天都有非常频繁的交流,主人在navicat上写下每条sql语句,轻轻的点了下执行按钮,navicat就飞快的把主人的指令传送到mysql那里,mysql ...

  7. jdk1.8HashMap底层数据结构:散列表+链表+红黑树,jdk1.8HashMap数据结构图解+源码说明

    一.前言 本文由jdk1.8源码整理而得,附自制jdk1.8底层数据结构图,并截取部分源码加以说明结构关系. 二.jdk1.8 HashMap底层数据结构图 三.源码 1.散列表(Hash table ...

  8. TCP queue 的一些问题

    转自Jasey Wang的blog,原文地址 首先回顾下三次握手里面涉及到的问题: 当 client 通过 connect 向 server 发出 SYN 包时,client 会维护一个 socket ...

  9. Selenium模拟登陆百度贴吧

    Selenium模拟登陆百度贴吧 from selenium import webdriver from time import sleep from selenium.webdriver.commo ...

  10. 【kafka】一、消息队列

    在高并发的应用场景中,由于来不及同步处理请求,接收到的请求往往会发生阻塞.例如,大量的插入.更新请求同时到达数据库,这会导致行或表被锁住,最后会因为请求堆积过多而触发“连接数过多的异常” 的错误.因此 ...