Appium+Python+Genymotion ------环境配置
前言
之前总是在找方向,也研究了很多的工具,终于找到了适合自己的一套,打算把学习的过程做一个记录,给自己加深印象,也希望能给其他人一些帮助。
一、工具准备
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的解决方案再来更新
最新文章
- 10个最常见的 HTML5 面试题及答案
- linux下重启服务命令
- PHP保留两位小数的几种方法
- Objective-C Foundation框架
- PHP之mysql_real_escape_string()函数讲解
- Hadoop--Map/Reduce实现多表链接
- WPF扩展标记
- Oracle 快照及 dblink使用 (两台服务器数据同步)
- 未知的生成错误 因为没有预加载,所以无法解析程序集 GalaSoft.MvvmLight
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 网页三剑客之HTML
- 期货大赛项目|八,ueditor的应用
- deque源码3(deque的构造与内存、ctor、push_back、push_front)
- 转载关于Python Web后端开发面试心得
- 测试网站nginx是否支持tls1.2的命令行
- 2016/2/26Android实习笔记(Android签名和aapt)
- Jmeter(三十九)User.Properties定义全局变量
- BZOJ2442 Usaco2011 Open修剪草坪(动态规划+单调队列)
- Python property,属性
- It isn't possible to write into a document from an asynchronously-loaded
热门文章
- 数据结构-哈夫曼树(python实现)
- TensorFlow笔记-图片读取
- C#3.0新增功能10 表达式树 03 支持表达式树的框架类型
- 小白学python-day05-IDE、格式化输出、For While循环、断点、continue、break
- Unity3D热更新之LuaFramework篇[07]--怎么让unity对象绑定Lua脚本
- JavaScript基础学习第六天
- ES 22 - Elasticsearch中如何进行日期(数值)范围查询
- 【JDK】JDK源码分析-Collection
- 编写自定义 .NET Core 主机以从本机代码控制 .NET 运行时
- HttpsUtils