工具名STF(Smartphone Test Farm)可以批量对大量设备进行WEB端管理,工具主页:https://openstf.github.io/
上个主页上的效果图吧:
它的github页面为: https://github.com/openstf/stf
下面简单记录下在centos和os x上搭建它的步骤
环境搭建
一:环境:centos6
在控制台分别运行
yum install gcc
yum install gcc-c++
yum install glibc
这里我偷了个懒直接拷贝已经下载好的JDK和Android SDK环境过来,当然如果没有的同学估计要重新慢慢下载和安装了。
拷贝SDK目录到HOME目录中,打开控制台命令运行:
vi /etc/bash_profile
配置环境变量并保存退出(wang为用户名,需要根据实际路径来填写)
export JAVA_HOME=/home/wang/SDK/jdk1.8.0_45
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export ANDROID_HOME=/home/wang/SDK/android-sdk-linux
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH
在控制台执行命令使之生效:
source /etc/bash_profile
验证:控制台分别输入adb和java -version来验证SDK是否配置生效
在https://nodejs.org/download/
下载nodejs安装包,解压并控制台进入目录
运行如下命令
./configure
make
make install
ln -s /usr/local/bin/node /usr/bin/node
ln -s /usr/local/bin/npm /usr/bin/npm
验证:控制台分别输入node -v和npm -v验证是否配置完成
控制台执行npm命令进行Bower安装并等待完成
npm install bower -g
验证:
控制台执行
sudo wget http://download.rethinkdb.com/centos/6/`uname -m`/rethinkdb.repo -O /etc/yum.repos.d/rethinkdb.repo
sudo yum install rethinkdb
验证:
最新版本包地址:http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/
解压GraphicsMagick-1.3.21.tar.gz并控制台进入目录
执行
./configure
make
make install
验证:
github下载最新包:https://github.com/jedisct1/libsodium/releases
解压libsodium-1.0.3.tar.gz并控制台进入目录
执行
./configure
make
make install
验证:
最新版本包地址:http://download.zeromq.org/
解压zeromq-4.1.2.tar.gz并控制台进入目录
执行
./configure
make
make install
ldconfig
github下载最新包:https://github.com/google/protobuf/releases
解压protobuf-cpp-3.0.0-alpha-3.tar.gz并控制台进入目录
执行
//因为需要配置环境变量,所以用参数指定到了local下的指定目录中
./configure --prefix=/usr/local/protobuf
make
make install
修改环境变量配置文件:
vi /etc/bash_profile
配置环境变量并保存退出:
export PATH=$PATH:/usr/local/protobuf/bin/
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/
在控制台执行命令使之生效:
source /etc/bash_profile
验证:
yum install pkg-config
验证:
控制台执行命令:
npm --registry=http://r.cnpmjs.org --disturl=http://dist.u.qiniudn.com install microtime install -g stf
安装过程:
环境:mac os x10.9.5
1、在mac电脑上可以使用homebrew安装依赖包
控制台执行命令:
brew install rethinkdb graphicsmagick zeromq protobuf yasm pkg-config
2、安装stf
控制台执行命令:
1.先安装cnpm:sudo npm install -g cnpm --registry=https://registry.npm.taobao.org
2.用cnpm命令执行安装stf:sudo cnpm install -g stf
STF运行
安装完成后,打开单独的控制台,运行命令等待服务启动完成:
rethinkdb
打开一个单独的控制台,运行命令等待服务启动完成:
stf local --public-ip 192.168.12.135 --allow-remote
注:这里我多加了个参数 --allow-remote用于允许远程调试设备连接
在浏览器中输入地址:http://localhost:7100/ 访问客户端。
输入用户名和邮箱登录即可开始使用。
然后就可以在页面上直接控制连接的设备了,按照官方的说法,可以控制more than 160 devices. 当然 要有好的hub或者无线环境。
其他的以后进一步发掘吧。
问题:平台搭建好后有些电脑访问会显示不了站点文字,经多次排查是字体问题,而且是lato字体搞的鬼。
解决方式:mac下终端进入/usr/local/lib/node_modules/stf/res/build,查找后缀.chunk.js的文件,把里面的lato字体全部删掉即可。
mac下一键启动shell脚本
#!/bin/sh
para=$1
killall -9 node
killall -9 rethinkdb
#ipaddr=`ifconfig eth0|awk 'NR==2{print $2}'|cut -d : -f2`
ipaddr=$(ifconfig en0 | awk '/inet /{ print $2 }')
echo $ipaddr
rethinkdb --bind $ipaddr &
sleep 3
DATE=`date +%F`
if [ "$para" = "ldap" ];then
echo $para
stf local --public-ip=$ipaddr --allow-remote --auth-type ldap --auth-options '["--ldap-url","xxx", "--ldap-bind-dn","xxx","--ldap-search-dn","xxx", "--ldap-bind-credentials","xxx", "--ldap-search-class","user", "--ldap-search-field", "mail"]'
else
echo "noldap"
stf local --public-ip=$ipaddr --allow-remote
fi