前言

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

一、工具准备

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. C# 中异常抛出捕获机制--throw / try,catch,finally

    try { messagebox.show("true"); } catch { messagebox.show("false"); } finally { m ...

  2. visual studio 容器工具首次加载太慢 vsdbg\vs2017u5 exists, deleting 的解决方案

    ========== 正在准备容器 ========== 正在准备 Docker 容器... C:\Windows\System32\WindowsPowerShell\v1.\powershell. ...

  3. 网络IP的操作

    10.10.10.10/8求解问题:子网掩码 10.255.255.255该IP地址所在网络的网络ID 10.0.0.0该IP地址所在网络的广播地址 10.255.255.255该IP地址所在网络的I ...

  4. 个人永久性免费-Excel催化剂功能第67波-父子结构表转换添加辅助信息之子父关系篇

    Excel作为一款数据领域的万物互联工具,连接一切外部的多种多样的数据源.将数据带到Excel的环境中,再进行数据处理.转换.统计分析等工作,是众多表哥表姐们每天都在经历的事情.能最快速将其他来源数据 ...

  5. c语言进阶11-算法设计思想

    一.  算法设计的要求: 为什么要学算法? /* 输出Hello word! */ #include "stdio.h" void main() { printf("He ...

  6. 给hexo博客的NEXT主题添加一个云日历

    一点废话 hexo中有文件的归档,但是博文的数目多了,浏览的时候也是很不方便的.于是我就有找个云日历的想法了,折腾了几天,网上的方法都试过了.但是没出效果.于是想着自己来写一个.这自己写的这部分是基于 ...

  7. iframe插入视频自动播放代码

    <iframe marginwidth=0 marginheight=0 src='http://www.wsview.com/yzplayerAction!play2.action?autoP ...

  8. Web访问原理-从输入URL到页面加载完成的过程中都发生了什么事情?

    从输入URL到页面加载完成的过程中都发生了什么事情?--这是一个经典的面试题: 主要是关于计算机网络方面的知识基础,对于非科班计算机自学web开发的同学可能理解起来就很困难. StackOverFlo ...

  9. [NSNull intValue]: unrecognized selector sent to instance 0x375c9860

    今天遇到这个问题,程序崩溃了……日志如下: -[NSNull intValue]: unrecognized selector sent to instance 0x375c9860*** Termi ...

  10. Restful API 中的错误处理

    简介 随着移动开发和前端开发的崛起,越来越多的 Web 后端应用都倾向于实现 Restful API. Restful API 是一个简单易用的前后端分离方案,它只需要对客户端请求进行处理,然后返回结 ...