背景:想要在Jenkins上跑appium的自动化测试,所以想要在Jenkins服务器(Linux远程)上安装appium服务,故而研究了一下appium+Linux下安装。虽然有无数的前辈踩过坑,但自己还是吭哧吭哧搞了一天半,终于大功告成。详细安装步骤,以及曲折的安装试错过程如下:
 
1、nodeJs安装
apt-get install node.js
 
2、npm安装
apt-get install npm
 
3、cnpm安装
npm install -g cnpm --registry=https://registry.npm.taobao.org // -g全局安装
 
4、appium安装
在非root用户权限下安装
cnpm install -g appium //appium server安装

cnpm install wd //appium client安装

说明:新版appium(我的是当前最新版本1.7.1)在root权限下,可以安装成功,但无法启动appium
5、极其曲折的appium安装过程
1)、最开始按appium官网教程来安装,但执行npm install -g appium 一直卡在第一步文件下载中,N久之后,返回timeout的错误
2)、尝试FQ,设置npm代理(据说和浏览器代理一致即可)
npm config set proxy http://server:port(或npm config set https-proxy http://server:port
 
查看当前代理:npm config get proxy
 
然鹅,没用。不知道有没有成功的小伙伴。
先取消npm代理:
npm config delete proxy(npm config delete https-proxy)
 
3)改为npm淘宝镜像安装
npm install -g appium --registry=https://registry.npm.taobao.org
理论上应该是可以的,但可能当时自己电脑网络有问题,还是timeout。没办法只好让同事在他电脑上安装(root权限下)。但由于网络极慢,安装了太久,我并不知道安装过程 是否报错,同事说应该安装好了,让我试试。
执行appium命令:appium -v ,报错 appium:command not found
但/usr/local/lib/node_modules下明明已经安装了appium
尝试:
  • 我想可能是缺少appium的环境变量,到profile文件中配置APPIUM_HOME和PATH环境变量,仍是报错 appium:command not found
  • /usr/local/bin下有已经存在的npm,newman等软连接,而且可以直接执行,我强行手动建立软连接:ln -s /usr/local/lib/node_modules/appium/lib/appium.js /usr/local/bin/appium,再执行appium -v ,报了一堆错。(ps:当然会报错,只怪小白的我怕根本没搞清楚appium执行原理,后来发现需要软连接源文件并不是这个目录下的,而是/usr/local/lib/node_modules/appium/build/lib/main.js)
4)但网上看很多人说新版appium不能使用root权限安装,否则启动失败。最后决定卸载appium,再去非root权限用户下,重新安装appium。
appium卸载命令:npm uninstall appium
 
5)非root用户权限安装appium
cnpm install -g appium //cnpm已经安装好
还是报错,permission denied
赋予当前用户权限:chown -R dev node_modules //node_modules目录及其子目录下的所有文件
再执行安装命令 cnpm install -g appium
虽然速度稍慢,但还是比较顺利的安装中,直到在安装的收尾阶段,突然报了错,还是权限问题
我索性使用root权限, sudo ln -s ../lib/node_modules/appium/build/lib/main.js /usr/local/bin/appium
appium软连接创建成功,再执行appium,惊喜的发现真的成功了。截图纪念。

appium+Linux环境安装配置的更多相关文章

  1. appium 使用环境安装配置记录

    一.安装配置Java (cmd输入java,回车,没有出现“不是内部或外部命令,也不是可运行的程序或批处理文件”,即为成功) 二.安装node.js (cmd输入node -v,显示版本号即为成功) ...

  2. Linux环境安装配置Swftools

    系统:CentOS6.5的64位版本   这里有一位仁兄的几个错误处理办法,下面是swftools的安装配置步骤:   1.安装所需的库和组件.机器之前安装过了,主要安装的是下面几个组件.如果不安装会 ...

  3. Linux环境安装配置JDK

    本文安装环境为Ubuntu14 64位,jdk版本为jdk1.6.0_38,安装文件名为jdk-6u38-linux-x64.bin(根据系统不同,下载不同的安装文件) 下载地址:http://www ...

  4. Linux环境安装配置maven

     按照下面命令执行即可 1.下载apache-maven-3.5.3-bin.tar.gz 并上传到服务器上 提取地址:https://pan.baidu.com/s/11nxZp84lmonRBCR ...

  5. linux环境安装配置nginx

    安装依赖 yum install gcc yum install pcre-devel yum install zlib zlib-devel yum install openssl openssl- ...

  6. Linux下xampp集成环境安装配置方法 、部署bugfree及部署禅道

    XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.XAMPP 是一个易于安装且包含 MySQL.PHP 和 Perl 的 Apache 发行版.XAMPP 的确非 ...

  7. LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2

    LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2 你是否遇见过:安装LNMP1.3环境后,运行ThinkPHP 3.2,只能打开首页,不能访问控制器,报404错误. 按照 ...

  8. Linux 下安装配置 JDK7

    Linux 下安装配置 JDK7 配置环境(debian 7) 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor Li ...

  9. (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

    Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...

随机推荐

  1. asp.net在类库中使用EF 6.0时的相关配置

    前提:之前使用EF的配置都是直接使用NuGet安装在项目中,然后直接修改web.config中的connectionString,然后创建相关dbcontext直接使用就可以了.此次为直接将EF安装在 ...

  2. Linux_服务器_01_查看公网IP

    在linux终端提示符下,输入以下命令: 精选: curl icanhazip.com/curl ifconfig.mecurl ipecho.net/plain 可以看到下图已经查询到公网IP地址了 ...

  3. SSM框架中的注解,配置和控制器相关笔记

    常规SSM实例 探索SSM理论的前提,应该是在对框架基础的运作方式有一定了解,以下是个人Android后台项目,用SSM框架快速搭建,以下是代码,主要 观察结构. 代码结构: model实体类 Ida ...

  4. IdentityServer4 禁用 Consent screen page(权限确认页面)

    IdentityServer4 在登录完成的适合,会再跳转一次页面(权限确认),如下: 我之前以为 IdentityServer4 就是这样使用的,但实际业务场景并不需要进行权限确认,而是登陆成功后直 ...

  5. js 作用域,作用域链,闭包

    什么是作用域? 作用域是一种规则,在代码编译阶段就确定了,规定了变量与函数的可被访问的范围.全局变量拥有全局作用域,局部变量则拥有局部作用域. js是一种没有块级作用域的语言(包括if.for等语句的 ...

  6. ionic3.0--angular4.0 引入第三方插件库的方法

    ionic3.0 引入第三方插件 (swiper),方法很多,现详细说明下官方推荐(typings)做法. 1.全局安装Typings 1. npm install -g typings  2.搜索你 ...

  7. mysql +keeplive

    下载tar包 ./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.32-431.el6. ...

  8. mac中利用brew实现多版本php共存以及任意切换

    1.安装brew 参考链接:https://brew.sh/index_zh-cn.html 2.安装php56 brew install homebrew/php/php56 3.配置php56 因 ...

  9. windows中更换Jdk版本不生效

    本机已经安装了jdk1.7,而比较早期的项目需要依赖jdk1.6,于是同时在本机安装了jdk1.6和jdk1.7. 安装jdk1.6前,执行java -version得到 C:\Users\liuxi ...

  10. [转载] 十五分钟介绍 Redis数据结构

    转载自http://blog.nosqlfan.com/html/3202.html?ref=rediszt Redis是一种面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存 ...