美文网首页
centOS下nodejs、appium、STF的安装

centOS下nodejs、appium、STF的安装

作者: ugvibib | 来源:发表于2017-11-04 15:52 被阅读433次
目的:
1、使appium服务独立出来,布署到服务器上;在需要用的时候,调用接口启动,用完之后,再通过调用接口关闭
2、安装stf服务的目的是为了实现appium与device之间分离,手机不一定非要插在appium服务所在的机器上面
3、 本文仅是安装,用于记录一些坑,意在帮助自己和他人,至于stf\appium如何使用,接口如何写等问题,可百度
版本:

nodejs:8.9.0(LTS)(必须>6.9.0)
appium:1.6.5
STF:3.1.0 (2017-08-31)


SDK、JDK安装我就不说了,网上都是教程,也很简单

一、nodejs安装

1、安装方式有三种:
1.1、二进制文件安装(推荐理由:已编译,下载后就能用)
1.2、源码安装(不推荐)
1.3、包安装(不推荐)
我这里使用二进制文件安装
nodejs下载地址: https://nodejs.org/dist/
上面地址包括了nodejs所有版本
如下图,选择这个文件,根据服务器系统版本选择,一个是64位,一个32位,我这里选择是64位的
(不要下载.gz结尾的文件,因为这个下载后还要手动编译,下载 .xz结尾的文件,这是已经编译好的)

nodejs下载地址

2、下载

网页上在那个文件位置右键,选择"复制链接"
打开终端输入:
wget https://nodejs.org/dist/v8.9.0/node-v8.9.0-linux-x64.tar.xz
如果没有wget,先安装一个:
yum install wget

3、解压

tar xvf node-v8.9.0-linux-x64.tar.xz -C /usr/local/nodejs

4、创建软链接(全局可用)

cd /usr/local/nodejs
ln -s /usr/local/nodejs/bin/node /usr/local/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/bin

5、检查是否安装成功

node --version

如果有版本号出来,说明安装成功,
如果没有,那就不知道为什么了,我第一次创建软链接后,就是这样,后来重启了centOS后,又试了一遍就好了,正常情况下,是没有问题的

二、appium安装(1.6.5)

appium的安装还好,挺简单,不像在windows安装那种,出现各种报错
1、更改阿里的链接下载安装:

npm config set registry http://registry.npm.taobao.org
cnpm -g install appium@1.6.5

很顺利,没有出现什么错误
2、检查是否成功

npm install appium-doctor
appium-doctor

如果成功了,显示应该都是ok的

三、STF的安装

STF安装,还是相对比较麻烦的,因为有太多的依赖包要装,并且每一个包还不一定可以装成功
下面是几个参考的链接
STF github:https://github.com/openstf/stf
WEB 端批量移动设备管理控制工具 STF 的环境搭建和运行:https://testerhome.com/topics/2988
STF 使用系列心得 [安装篇]:https://testerhome.com/topics/6112
具体的安装步骤,我就不说了,大家参考上面的链接一步一步操作就可以了,
记住,每一个包安装完后,一定要检查是否真的安装成功

四、以下是我遇到的一些坑:

1、zmq安装出问题了

make: 进入目录“/opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq/build”
  CXX(target) Release/obj.target/zmq/binding.o
../binding.cc:28:17: 致命错误:zmq.h:没有那个文件或目录
 #include <zmq.h>
                 ^
编译中断。
make: *** [Release/obj.target/zmq/binding.o] 错误 1
make: 离开目录“/opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq/build”
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 3.10.0-693.2.2.el7.x86_64
gyp ERR! command "/opt/node-v8.9.0-linux-x64/bin/node" "/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/npminstall/node-gyp-bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
Install fail! Error: Run "sh -c node-gyp rebuild" error, exit code 1
Error: Run "sh -c node-gyp rebuild" error, exit code 1
    at ChildProcess.proc.on.code (/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/runscript/index.js:74:21)
    at emitTwo (events.js:126:13)
    at ChildProcess.emit (events.js:214:7)
    at maybeClose (internal/child_process.js:925:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
npminstall version: 3.2.1
npminstall args: /opt/node-v8.9.0-linux-x64/bin/node /opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/npminstall/bin/install.js --china --userconfig=/root/.cnpmrc --disturl=https://npm.taobao.org/mirrors/node --registry=http://registry.npm.taobao.org stf -g
[root@localhost ~]# 

我不知道zmq即zeromq,我就单独安装下试试,发现也是报和下面相同的错误:

[root@localhost ~]# npm install zmq
make: 进入目录“/opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq/build”
  CXX(target) Release/obj.target/zmq/binding.o
../binding.cc:28:17: 致命错误:zmq.h:没有那个文件或目录
 #include <zmq.h>
                 ^
编译中断。
make: *** [Release/obj.target/zmq/binding.o] 错误 1
make: 离开目录“/opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq/build”
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 3.10.0-693.2.2.el7.x86_64
gyp ERR! command "/opt/node-v8.9.0-linux-x64/bin/node" "/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/npminstall/node-gyp-bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/node-v8.9.0-linux-x64/lib/node_modules/stf/node_modules/_zmq@2.15.3@zmq
gyp ERR! node -v v8.9.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
Install fail! Error: Run "sh -c node-gyp rebuild" error, exit code 1
Error: Run "sh -c node-gyp rebuild" error, exit code 1
    at ChildProcess.proc.on.code (/opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/runscript/index.js:74:21)
    at emitTwo (events.js:126:13)
    at ChildProcess.emit (events.js:214:7)
    at maybeClose (internal/child_process.js:925:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
npminstall version: 3.2.1
npminstall args: /opt/node-v8.9.0-linux-x64/bin/node /opt/node-v8.9.0-linux-x64/lib/node_modules/cnpm/node_modules/npminstall/bin/install.js --china --userconfig=/root/.cnpmrc --disturl=https://npm.taobao.org/mirrors/node --registry=http://registry.npm.taobao.org stf -g
[root@localhost ~]# 

之后百度了一通,参考下面两个链接,乱安装了一通,可以了
centos zeromq安装备忘:http://cnodejs.org/topic/55f157b7e7e9419311255b13

小结:

有幸让大家看到这篇文章,很是激动,如果有什么问题,可以留言

相关文章

网友评论

      本文标题:centOS下nodejs、appium、STF的安装

      本文链接:https://www.haomeiwen.com/subject/gkwfmxtx.html