Appium--环境搭建

   Appium介绍

 

     Appium是一个移动端的自动化框架,可以做H5、Web测试、可以做功能测试(Android、IOS)、可以做跨进程测试,且是跨平台的。Appium做测试的时候支持的语言有很多种,包括java、Python、ruby、PHP、C#等。由于我熟悉java,后续的demo和博文,都采用java。其实appium搭建环境网上的博文非常的多,我是最近工作之余搭建好,并完成了一个demo,写次博文记录下自己的appium学习历程。

 

   Appium安装步骤

 

     1.先是安装node.js, 至于为什么先装node.js,node.js能干嘛,暂不深究,node.js官方网站:https://nodejs.org/,根据自己的系统选择版本进行下载安装。

 

 

     下载完成后,双击安装如下图:

        

 

     安装完成后,运行cmd,输入node –v,如果安装成功,会输出如下版本信息:

     

 

      或者输入npm, 会显示如下图:

     

 

      npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。有了npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。

      到这里为止,node.js已经安装完毕。

      2.安装appium,安装appium有两种方法。

      1).借助于步骤1安装好的node.js,进入cmd,输入命令npm  install –g appium

     

 

      这种方法安装的比较慢,最终也是可以安装成功的。

     2). 去官网上选择下载相应版本的appium并安装。

      https://bitbucket.org/appium/appium.app/downloads/

    

 

      我的是windows系统64位。下载并解压完之后,双击“appium-installer.exe”安装。根据提示,一步一步进行安装,最终在会桌面上生成Appium图标,当我双击图标时,那么问题来了。

     

 

      然后点击确定按照提示一步步安装.NET  Framework。为什么装appium时会弹出这些东东,因为Appium是由.NET 开发的,所以,它会依赖 .NET framework相关组件。当你按照提示安装所有的组件之后,双击 Appium 。你会看到如下图所示:

     

      3.安装好appium之后,我们来安装并配置Android开发环境。众所周知Android是基于java开发的,那么java开发环境是前提。Java环境如何搭建可以参照我的另外一篇博文 http://www.cnblogs.com/feimaoyuzhubaobao/p/5057804.html

        首先是通过官方地址下载: http://developer.android.com/sdk/index.html  Android sdk

不能保证这个网站都能下下来。那么提供链接:

http://dl.google.com/android/android-sdk_r23.0.2-windows.zip

http://dl.google.com/android/installer_r23.0.2-windows.exe

http://dl.google.com/android/android-sdk_r23.0.2-macosx.zip

http://dl.google.com/android/android-sdk_r23.0.2-linux.tgz

       打开官网,若是下载ADT Bundle,ADT Bundle包含了Eclipse、ADT插件和SDK Tools,是已经集成好的IDE。我想看到此博文的朋友应该是都有Eclipse的,那么直接下载Android-sdk即可。下载好之后解压如下:

     

 

      其中AVD Manager是模拟器,SDK Manager是用来下载各种版本的Android和插件。设置Android环境变量,以我本机的andriod-sdk目录为例。“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建.

   

   变量名:ANDROID_HOME 变量值:D:\android\android-sdk-windows

 

      找到path变量名—>“编辑”添加:

      

  变量名:Path变量值:;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

 

      如果想跑appium测试框架,appium环境变量也是需要配置的。这个变量值其实就是appium安装的bin目录。

      找到path变量名—>“编辑”添加:

  变量名:Path变量值:D:\Program Files (x86)\Appium\node_modules\.bin

 

      4.安装Android模拟器,双击启动SDK Manager.exe 程序。

      

 

      不能保证你的SDK可以更新,所以,这里推荐一个

       http://www.androiddevtools.cn/

      它提供了国内的代理,以及各种开发工具的安装。在Android SDK Manager 的菜单栏上点击“Tools”---->“Options...”设置相关代码,如下图:

     

 

     然后,就可以更新了:

   

 

    到此为止appium自动化测试框架的环境搭建完毕,我们现在来测试下是否安装成功。

    打开cmd命令窗口,输入appium–doctor

   

    看到此图,那么恭喜你,appium环境已经搭建完毕。开始你的appium之旅吧!

 

转载于:https://www.cnblogs.com/feimaoyuzhubaobao/p/5057832.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/404476.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows 系统下Git安装图解

From: http://blog.csdn.net/jiguanghoverli/article/details/7902791 Windows 系统下Git安装图解 简单来说Git是一个免费的、开源的版本控制软件,从功能上讲,跟我们比较熟悉的Subversion(SVN)这类版本控制软件没什么两样。由于工作的需求,需…

【fedora12】vlc-2.0.0编译

From: http://www.zhouwenyi.com/node/1348 1. 官网下载 VLC 源码 (vlc- 2.0.0.tar.xz) 下载地址为: http://download.videolan.org/pub/videolan/vlc/2.0.0/vlc-2.0.0.tar.xz 2. 解压VLC源码: xz -dvlc-2.0.0.tar.xz tar -xvfvlc-2.0.0.tar 3. cdvlc-2.0.0 …

Android实现3D旋转效果

下面的示例是在Android中实现图片3D旋转的效果。实现3D效果一般使用OpenGL,但在Android平台下可以不直接使用OpenGL,而是使用Camera实现,Camera中原理最终还是使用OpenGL,不过使用Camera比较方便。 Camera类似一个摄像机&#xff…

搭建hadoop开发环境--基于xp+cygwin

2019独角兽企业重金招聘Python工程师标准>>> 1.安装cygwin 参考博文:http://hi.baidu.com/%BD%AB%D6%AE%B7%E7_%BE%B2%D6%AE%D4%A8/blog/item/8832551c7598551f314e15c2.html Q1.实际安装中在第9步 “打开cygwin进行配置,首先输入&#xff…

random---伪随机数生成器

python3.5 作用:实现了多种类型的伪随机数生成器 random模块基于Mersenne Twister 算法提供了一个快速伪随机数生成器。原先开发这个生成器是为了向蒙特卡洛模拟生成输入,Mersenne Twister算法会生成有一个大周期的近均匀分布的数,以适用于各…

新浪微博iOS版SDK“宝玉XP”框架学习笔记

本文为论坛会员3h2om分享,对新浪微博iOS版SDK-“宝玉XP”框架进行研究所写的学习笔记,非常详细和精彩。 本人刚入学iOS开发,在学习的过程中,对新浪微博iOS版SDK-“宝玉XP”框架进行了学习(下载地址:https:/…

Lync Server 2010所需媒体网络流量带宽详解和计算

如果在组织内部部署Lync Server 2010,那么最大的优势就是解决了组织内部的即时通讯需求,为什么这么说?因为纵观现在微软所推行的商业智能应用平台,可以非常直观的了解到实际上整个微软商业平台就是由Lync Server、Exchange Server…

Linux互斥锁的使用代码实现

From: http://blog.csdn.net/leo115/article/details/8037869 [cpp] view plaincopy#include <stdio.h> #include <pthread.h> #include <sched.h> #include <unistd.h> //对临界区的保护问题 void *fun1(void *arg); void *fun2(void *ar…

USB Camera摄像头(UVC 与 gspca)

From: http://www.cnblogs.com/leaven/archive/2010/08/19/1802934.html http://weijb0606.blog.163.com/blog/static/131286274201063145356429/ 我的摄像头终于出现图像了&#xff01; 李迟按&#xff1a;本文章不是教程&#xff0c;不是心得总结&#xff0c;而是记录我在…

随机存取存储器(RAM)

RAM&#xff08;random access memory&#xff09;随机存储器。存储单元的内容可按需随意取出或存入&#xff0c;且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容&#xff0c;故主要用于存储短时间使用的程序。 按照存储信息的不同&#xff0c;…

创建弹出窗口的图片展示

本帖最后由 oisweb 于 2009-11-24 14:11 编辑图片有点大了 显示不是很好 自己看着办吧 1 创建工程 设置页面属性 <mx:Application xmlns:mx"http://www.adobe.com/2006/mxml" layout"vertical" horizontalAlign"center" verticalAlign&…

移植gdb到DM368 IPNC中 linux arm gdb

From: http://blog.csdn.net/ghostyu/article/details/8081897 移植gdb到嵌入式的ipnc中&#xff0c;大多数人习惯使用printf调试&#xff0c;但是遇到像”segment fault“这的错误也是后就很难定位&#xff0c;这时候gdb的作用就体现出来了 在pc使用gdb调试应用程序前&…

Silverlight实用窍门系列:56.Silverlight中的Binding使用(一)【附带实例源码】

本文将详细讲述Silverlight中Binding&#xff0c;包括Binding的属性和用法&#xff0c;Binding的数据流向。 Binding:一个完整的Binding过程是让源对象中的某个属性值通过一定流向规则进行转换和验证之后绑定到目标对象的某个属性上面。这个源对象由ElementName指定&#xff0c…

jqGrid + JSON + WebService 完整示例

真没找到这样的例子&#xff0c;于是自已写了个&#xff0c;分享出来。 第一步&#xff0c;首先在WebService上&#xff0c;添加[System.Web.Script.Services.ScriptService]属性标签&#xff0c;让WebServer支持JSON. namespace jqGrid_JSON_WebService_Sample.Services{/// &…

交叉编译和交叉调试环境搭建及使用

From: http://blog.chinaunix.net/uid-25119314-id-226230.html 1. 交叉编译器 1.1 交叉编译器介绍 在一种计算机环境中运行的编译程序&#xff0c;能编译出在另外一种环境下运行的代码&#xff0c;我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说&…

Hello Views之Spinner(yaozq翻译,仅供参考)

Spinner是一种类似于下拉列表的widget。 在这个教程中&#xff0c;你将创建一个简单的用于展示星球列表的spinner组件。当选择列表中的一项时&#xff0c;将会弹出一个表示所选项的toast信息。下面是具体步骤&#xff1a; 1&#xff0c;新建一个名为HelloSpinner的项目。 2&…

Bitmap 之 getPixels() 的 stride

学习Graphics中遇到位图(Bitmap)中getPixels()方法&#xff0c;对该方法的用法大体理解&#xff0c;但对其中的stride参数却不明白具体的用法以及用意&#xff0c;现记述过程如下&#xff1a; getPixels()方法的用处为获取位图(Bitmap)中的像素值(颜色值)&#xff0c;存入类型为…

i++ 和 ++i 效率的分析以及自定义类型的自增/自减运算符重载实例

From: http://blog.csdn.net/leo115/article/details/8101541 我们通常在写for循环 的时候&#xff0c;要实现变量 i 的自增 1 &#xff1b;往往会在i 和i中随便挑一种写&#xff0c;对于i和i的理解&#xff0c;我们往往停留在返回的值的不同&#xff0c;其实i与i在实现效率上…

BZOJ 1146: [CTSC2008]网络管理Network( 树链剖分 + 树状数组套主席树 )

树链剖分完就成了一道主席树裸题了, 每次树链剖分找出相应区间然后用BIT(可持久化)权值线段树就可以完成计数. 但是空间问题很严重....在修改时不必要的就不要新建, 直接修改原来的..详见代码. 时间复杂度O(N*log^3(N))------------------------------------------------------…

struts2遍历select

2019独角兽企业重金招聘Python工程师标准>>> <s:bean name"org.apache.struts2.util.Counter" id"counter"> <s:param name"first" value"1" /> <s:param name"last" value"pageCount"…