移动端自动化测试(一)之 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开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程 ...
随机推荐
- 使用lld自动发现监控多实例redis
zabbix 可以通过常见的手段监控到各种服务,通过编写脚本来获取返回值并将获取到的值通过图形来展现出来,包括(系统.服务.业务)层面.可是有些时候在一些不固定的场合监控一些不固定的服务就比较麻烦.例 ...
- 前端-----margin用法(盒子模型里补充)
margin塌陷问题 当时说到了盒模型,盒模型包含着margin,为什么要在这里说margin呢?因为元素和元素在垂直方向上margin里面有坑. 我们来看一个例子: html结构: <div ...
- Django 自定义模型管理器类2个应用场景
class BookManager(models.Manager): # 改变查询集的结果集 def all(self): books = super().all() # QuerySet books ...
- js---数组排序法(冒泡排序;快速排序)
1.冒泡排序 原理:将数组的相邻两个元素进行比较,大的就往后移,小的往前,依次比较并且进行递减迭代. var arr =[54,36,89,1,3,5,2]; function sortArr(arr ...
- python 面向对象编程(高级篇)
飞机票 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对 ...
- WebSocketTest 异步通讯,实时返回数据
using System;using System.Net;using System.Net.Sockets;using System.Text;using System.Threading;usin ...
- 银联支付java版
注:本文来源于:< 银联支付java版 > 银联支付java版 2016年09月18日 15:55:20 阅读数:2431 首先去银联官网注册测试支付账户 下载对应的demo[ ...
- oracle提高查询效率的34条方法
注:本文来源:远方的守望者 <oracle提高查询效率的34条方法> oracle提高查询效率的34条方法 1.选择最有效率的表名顺序 (只在基于规则的优化器中有效): ORACLE的解 ...
- 如何打包/运行jar包,及生成exe文件
关于如何打包/运行jar包,以及生成exe文件.之前各种查询.博客,终于搞明白究竟是咋回事.记得还做过笔记的.今天要打包生成exe用的时候,居然忘了咋怎来着.去查看之前的笔记,死活没找到(好像被删掉了 ...
- git使用中出现的错误
因同时有两个git账户,之前登录了git A 用户在使用了 1. 长期存储密码 git config --global credential.helper store 之后在git B 账 ...