目录
OpenSTF是一个手机设备管理平台,可以对手机进行远程管理、调试、远程手机桌面监控等操作。这个系统类似于目前很流行的云测服务比如Testin,虽然网页上提供的设备很像模拟器中的设备,但是实际上都是真机。
官方源码地址:https://github.com/openstf
OpenSTF是使用nodejs和angularjs开发,遵循apache licene2.0开源协议,用户可以对源码进行修改发布,
- 页面的HTML使用帕格模版引擎(.pug)
- 前端使用的是Angularjs
- 后端使用的是的NodeJS
- 数据库使用的是对象型数据库 Rethinkdb,采用的是json字符串格式保存数据
目录解读:
/.tx | transifex网站相关的配置,主要是用于其它语言翻译 |
/bin | 启动文件,其实是连接到lib/cli.js |
/docker | Docker的相关配置 |
/lib | 后端代码 |
/conf | 应该是mysql的配置文件,但是目前没有使用 |
/doc | 关于STF平台的说明 |
/test | 检测平台的状态 |
/vendor | 需要安装到手机上的应用或者服务 |
/node_modules | npm相关组件 |
/rethinkdb_data | rethinkdb的数据库文件 |
package.json | npm所需要的组件集,以json格式保存 |
………… | 其它说明文件与打包 |
Linux(CentOS7)搭建STF
安裝nodejs
- cd /usr/local
- mkdir node
- cd /usr/local/node
- wget https://nodejs.org/download/release/v8.14.0/node-v8.14.0-linux-x64.tar.gz
- tar -zxvf node-v8.14.0-linux-x64.tar.gz
- mv node-v8.14.0-linux-x64 node-linux-x64
配置环境变量:
- vim /etc/profile
在文件中增加如下内容:
- export NODE_HOME=/usr/local/node/node-linux-x64
- export PATH=$PATH:${NODE_HOME}/bin;
安装完后,查看版本号,是否安装成功
npm安装所在目录:cd /usr/local/node/node-v8.14.0-linux-x64/lib/node_modules/
之前安装了node10.x,可能是版本的问题,导致安装stf一直不成功,后面百度资料,降低node版本到8.14
安裝jdk
输入java -version,可以看到系统自带的OpenJDK版本信息。
rpm -qa | grep java
下面这几个可以删除, 例如:
- rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
检查是否已经删除成功
java -version
执行安装
- 下载JDK文件:/usr/local/node/download/jdk-8u141-linux-x64.tar.gz
- 解压JDK安装文件:tar xvzf jdk-8u141-linux-x64.tar.gz
- 移动JDK文件:mv jdk1.8.0_141 /usr/local/java
配置环境变量
- export JAVA_HOME=/usr/local/java/jdk1.8.0_141
- CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib
- export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin;
安裝Android-sdk-linux
- 下载文件:/usr/local/node/download/android-sdk_r24.2-linux.tgz
- 解压文件:tar xvzf android-sdk_r24.2-linux.tgz
- 移动文件:mv android-sdk-linux /usr/local/Android-SDK
配置环境变量
- export ANDROID_HOME=/usr/local/Android-SDK/android-sdk-linux
- export PATH=$PATH:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools;
上述执行,是没有包含SDK tools插件的, 可执行以下步骤获取:
安装sdk所有的插件:android update sdk --no-ui