移动端自动化测试(一)之 Appium+Pyhton环境准备篇
移动端自动化测试(一)之 Appium+Pyhton环境准备篇
2016-11-17 16:51 by CockRoacher, 5046 阅读, 1 评论, 收藏, 编辑
由于工作的需要进行Andriod手机app自动化测试,公司现有支持的app的手机平台(Andriod和IOS), 所以选择了Appium工具。因为Andriod和IOS,Appium都支持。百度和谷歌上的各种Appium教程可谓是琳琅满目,但大抵都是浅尝辄止。因此笔者想要总结一套较全面的Appium的实战经验,以此记录我遇到的坑和填过的坑。
web自动化测试的路线是这样的:编程语言基础--->测试框架--->webdriver API(selenium2)--->开发自动化测试项目。
移动自动化的测试的路线则是这样的:编程语言基础--->测试框架--->android/IOS开发测试基础---->appium API ----->开发移动自动化项目。
俗话说,工欲善其事,必先利其器。闲话不多话,开始!
准备工作
一、Python安装
Python作为当下猿类主流的热门语言,低门槛,上手快,见效快。目前主流的编程语言对Appium的兼容都是很好的,现在流传世面使用的python版本有两种:Python2与Python3。python3并不是python2的升级,可以理解成python2和python3是两种完全不同的语言,它们的类库是完全不能兼容的!但python官方文档已说明python2只是过渡版,在2020年就会停止对python2的维护和更新,并推荐转为使用python3。不过本教程仍是以python2.7.12为例。访问python官网,https://www.python.org/downloads/release/python-2712/ 下载适合自己操作系统的安装文件

这里以Windows(64位)操作系统为例,下载Windows x86-64 MSI installer,双击打开,一直next,在选择安装组件的一步时,勾上所有的组件完成安装。值得注意的一点是需要勾选上Add python.exe to Path,

默认会安装到C:\Python27目录下,然后打开命令提示符窗口,敲入python后,

如果出现以上画面则说明python安装成功!当然如果命令行出现提示 "‘python’不是内部或外部命令,也不是可运行的程序或批处理文件。",则说明在安装时忘记勾选上Add python.exe to Path。
二、Appium安装
Appium官方网站:http://appium.io/,关于安装说明,官方也给出了言简意赅的安装步骤:

看了官方的安装说明,感觉貌似并不是那么的难。其实这里面还是遇到了不少的坑。OK,为了尊重官方,我们首先还是按照官方的方法尝试安装。
1、安装node.js
为什么要安装node?node.js 是javascript和Google V8结合的服务器项目,appium就是node的其中一个开源项目,appiun server端是用node实现,遵循了REST架构(1),所以appium可以用node的包管理工具npm来进行安装。
下载node.js ,下载地址:https://nodejs.org/en/download/ 建议下载最新的LTS版本。目前Latest LTS Version: v6.9.1 (includes npm 3.10.8),一路"Next"即可安装完成。默认安装路径为"C:/Program Files/nodejs/",安装时需添加系统全局变量。

安装完成,然后打开命令提示符窗口,敲入npm -v,

如果出现以上画面则说明node.js安装成功!
安装步骤
1、安装Appium
方法一:
由于appium实则是一个node的开源项目,所以可以使用node的包管理工具npm在线安装,打开命令提示符窗口输入"npm install -g appium"即可在线安装,但是由于GFW关系,此方法会在安装过程中卡住或是直接报错,解决办法:挂VPN代理FQ
方法二:
因为npm install是连接官方的npmjs.org去下载源码,为了满足国内开发人员的需要,淘宝npm镜像cnpmjs.org可替代官方版本。打开输入"npm install -g appium --registry=https://registry.npm.taobao.org"。此方法可行,但不推荐,安装过程耗费时间略长,也不一定会成功。
方法三:(推荐)
直接下载appium的GUI界面安装包,下载地址:https://pan.baidu.com/s/1jGvAISu#list/path=%2F,Windows最新版本是AppiumForWindows_1.4.16.1.zip,MacOS最新版本是appium-1.5.3.dmg。笔者以windows为例,下载的AppiumForWindows_1.4.16.1.zip 进行解压安装,启动appium,弹出错误提示框
很容易在网上查到错误原因,因为node.js需要.NET Framework框架的支持,所以在这里需要安装net framework4.5。当.net framework 4.5安装完成,再次启动Appium,

出现上面的画面则表示appium的服务端已安装完成。那么我们还要安装appium的客户端,因为我们是基于python的开发环境,因此可以直接用pip安装appium客户端。打开命令控制行,输入"pip install Appium-Python-Client",

等待提示Success,即完成了所有的安装。大多数网上的教程就到此结束,但其实安装还没有结束。因为我们使用的方法三进行安装,所以还需要手动设置appium的环境变量(2)。
(如果从官方的资源库下载Appium-Python-Client失败,请自行更换下载源重新下载。在命令行输入"pip install Appium-Python-Client -i http://pypi.douban.com/simple"重试 特别鸣谢@大橙子 同学的指正。)
tips:设置方法:选中计算机点击右键-->属性-->高级系统设置,选中高级-->系统变量,在新建系统变量,变量名为"APPIUM_HOME",变量值为"C:\Program Files (x86)\Appium"(默认安装路径);再编辑PATH,添加变量值";%APPIUM_HOME%\node_modules\.bin;"
设置完成后打开命令行,输入"appium-doctor",

根据提示可知,还需设置Android环境变量,而Android环境变量又需要Java环境的支持。所以最后自行下载搭,建JDK和Android SDK环境吧。所有安装完成后,再次在命令行输入"appium-doctor",

以上则是搭建APPIUM环境的准备工作和所有步骤过程,大家也来试一试吧!
移动端自动化测试(一)之 Appium+Pyhton环境准备篇的更多相关文章
- 移动端自动化测试(一)appium环境搭建
自动化测试有主要有两个分类,接口自动化和ui自动化,ui自动化呢又分移动端的和web端的,当然还有c/s架构的,这种桌面程序应用的自动化,使用QTP,只不过现在没人做了. web自动化呢,现在基本上都 ...
- 移动端自动化测试Appium环境搭建(part1-2-3)
Appium移动端自动化测试相信大家都不陌生,appium的铁哥们是selenium,不管是selenium还是appium,都是调用webdriver来做自动化测试.今天关于appium的介绍我们不 ...
- appium+python做移动端自动化测试
1 导言 1.1 编制目的 该文档为选用Appium作为移动设备原生(Native).混合(Hybrid).移动Web(Mobile Web)应用UI自动化测试的相关自动化测试人员.开发人员等提供 ...
- 移动端自动化测试Appium 从入门到项目实战Python版☝☝☝
移动端自动化测试Appium 从入门到项目实战Python版 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 说到APP自动化测试,Appium可是说是非常流 ...
- 手机自动化测试:搭建appium手机自动化测试开发环境
手机自动化测试:搭建appium手机自动化测试开发环境 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大 ...
- 移动端自动化测试-WTF Appium?
手机App分为两大类,原生App(Native App)和混合APP(Hybrid App) 原生App(Native App) 原生App实际就是我们所常见的传统App开发模式,云端数据存储+App ...
- 移动端自动化测试(二)之 Appium常用的API(python)函数介绍
上一章节已经介绍了Appium的环境搭建,其实只要掌握了Appium的工作原理,前期的准备工作和安装过程是比较简单的.那么当我们搭建好Appium环境后接下来做些什么呢?通常思路是开始appium的第 ...
- 移动端自动化测试-WTF Appium
手机App分为两大类,原生App(Native App)和混合APP(Hybrid App) 原生App(Native App) 原生App实际就是我们所常见的传统App开发模式,云端数据存储+App ...
- 移动端自动化测试appium 从入门到项目实战Python版✍✍✍
移动端自动化测试appium 从入门到项目实战Python版 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程 ...
随机推荐
- Light Oj 1003
题意 : 给你m个二元关系, 问是否可以确定各个节点的先后关系: 思路: 拓扑排序, 判断是否有环: #include<bits/stdc++.h> using namespace std ...
- Codeforces 833D Red-Black Cobweb [点分治]
洛谷 Codeforces 思路 看到树上路径的统计,容易想到点分治. 虽然只有一个限制,但这个限制比较麻烦,我们把它拆成两个. 设黑边有\(a\)条,白边有\(b\)条,那么有 \[ 2a\geq ...
- css一些基础效果
1.旋转 .center>.bj>.div1>ul>li>.img1:hover {transform: rotate(-360deg);transition: 1s}/ ...
- 金9银10,分享几个重要的Android面试题
说一下java多态的理解,以及接继承,和接口的理解 于哥在这里只讲多态,其他自己上网体会 对于多态的定义不同类的对象对统一函数做出不同对的响应或者动作.作用主要是消除类之间的耦合性,灵活性比较强,利于 ...
- Java.ftp上传下载
1:jar的maven的引用: 1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...
- Confluence 6 启用主题评论
页面或者博客页面中显示的评论以下面 2 种方式显示: 主题模式(Threaded):以继承回复的方式显示页面的评论.每一回复的评论将会在不同评论之间显示,以表示各个评论之间的关系. 平面模式(Flat ...
- Confluence 6 升级自定义的站点和空间获得你的自定义布局
我们建议你在对站点进行布局修改的时候,你需要为你修改的 Confluence 站点或空间布局保留所有的修改记录. 如果没有的话,你应该可以通过下面的办法找到你的自定义修改.这个方法将会把你对全部网站和 ...
- 关于deepin linux15.6-15.9.1系统播放视频卡顿解决办法
关于deepin linux15.6-15.9.1系统播放视频卡顿解决办法 chrome浏览器 关闭chrome硬件加速模式 设置>高级>使用硬件加速模式 注释:由于视频卡顿是因显卡驱动问 ...
- Logcat命令详情
logcat是什么? Logcat 是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从您的应用使用 Log类编写的消息. 格式:[adb] logcat [<opti ...
- 复习os模块常用的一些操作
import os # 1.切换路径============= d = os.getcwd() #获取当前的工作路径 os.chdir('D:\\')#目录的切换 print(os.getcwd()) ...