一款基于nodejs+jade模板开发的手机群控框架,你可以在此基础上拿来测试设备,或者群操作等等。

主要核心技术在于如何在不root的情况下实时流畅录屏,以及远程操作手机。

官方git

https://github.com/openstf/stf

安装环境

虚拟机:centos7

镜像源:yum阿里云镜像(http://mirrors.aliyun.com/

软件安装

前提是一件安装好了nodejs环境,然后执行简单的命令即可

  1. npm install -g stf

光安装软件是无法运行的,下面还要安装各种依赖。

环境安装

包括

  • Node.js >= 0.12
  • ADB properly set up
  • RethinkDB >= 2.2
  • GraphicsMagick (for resizing screenshots)
  • ZeroMQ libraries installed
  • Protocol Buffers libraries installed
  • yasm installed (for compiling embedded libjpeg-turbo)
  • pkg-config so that Node.js can find the libraries

ADB

ADB+Android SDK去腾讯镜像下载

http://android-mirror.bugly.qq.com:8080/include/usage.html

用winscp复制下载文件到linux系统,我选择路径为/opt/

unzip或tar命令解压即可。

先解压sdk,生成android-sdk-linux目录,再把platform-tools_r24.0.3-linux移到目录里,解压

设置环境变量

创建文件

cd /etc/profile.d

touch path.sh

vim path.sh

保存内容

export ANDROID_HOME=/opt//android-sdk-linux

export PATH=$PATH:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools

重启机器

adb

RethinkDB

据说完美支持SSD的nosql

https://rethinkdb.com/docs/install/centos/

  1. sudo wget http://download.rethinkdb.com/centos/7/`uname -m`/rethinkdb.repo \
  2. -O /etc/yum.repos.d/rethinkdb.repo
  3. sudo yum install rethinkdb

GraphicsMagick

图片处理瑞士军刀

安装各种库

主要是下面三个,如果还想支持别的图片,自行yum

FreeType 2.0 –with-ttf=yes no (需要freetype支持)

JPEG v1 –with-jpeg=yes no (需要libjpeg支持)

PNG –with-png=yes no (需要libpng支持)

下载安装

http://www.graphicsmagick.org/download.html

  1. tar -xf GraphicsMagick-1.3.18.tar.gz
  2. cd GraphicsMagick-1.3.18
  3. #如果上面的库都是yes,no的不支持,想支持自行yum,就没有问题了
  4. ./configure --prefix=/usr/local/GraphicsMagick --enable-shared
  5. make && make install
  6. #这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤。
  7. #./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。configure,这一步一般用来#生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码:./configure –prefix=/usr 意思是将该软件安装在 /usr 下#面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。同时一些软件的配置文件你#可以通过指定 –sys-config= 参数进行设定。有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –#help 察看详细的说明帮助。
  8. #make是用来编译的,它从Makefile中读取指令,然后编译。
  9. #make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。

添加到环境变量

  1. vim /etc/profile.d/path.sh
  2. #添加一行
  3. export PATH=$PATH:/usr/local/GraphicsMagick/bin

重启即可

gm

zeromq

轻量级消息队列内核

有点大

http://zeromq.org/intro:get-the-software

  1. git clone https://github.com/zeromq/libzmq
  2. ./autogen.sh && ./configure && make -j 4
  3. make check && make install && sudo ldconfig

安装过程遇到一个test fail,我怀疑是官方搞错了,跳过check,直接安装吧

git貌似不好使,所以还是下载安装包

To build on UNIX-like systems

If you have free choice, the most comfortable OS for developing with ZeroMQ is probably Ubuntu.

Make sure that libtool, pkg-config, build-essential, autoconf, and automake are installed.

Check whether uuid-dev package, uuid/e2fsprogs RPM or equivalent on your system is installed.

Unpack the .tar.gz source archive.

Run ./configure, followed by make.

To install ZeroMQ system-wide run sudo make install.

On Linux, run sudo ldconfig after installing ZeroMQ.

To see configuration options, run ./configure –help. Read INSTALL for more details.

安装完成后

  1. Libraries have been installed in:
  2. /usr/local/lib
  3. If you ever happen to want to link against installed libraries
  4. in a given directory, LIBDIR, you must either use libtool, and
  5. specify the full pathname of the library, or use the `-LLIBDIR'
  6. flag during linking and do at least one of the following:
  7. - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
  8. during execution
  9. - add LIBDIR to the `LD_RUN_PATH' environment variable
  10. during linking
  11. - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
  12. - have your system administrator add LIBDIR to `/etc/ld.so.conf'
  13. See any operating system documentation about shared libraries for
  14. more information, such as the ld(1) and ld.so(8) manual pages.

这是告诉你接下来要怎么用。简单的办法是在 /etc/ld.so.conf.d 下新建一个文件 local.conf,里边写上 /usr/local/lib。然后以 root 权限执行 ldconfig。这样你的系统才会找得到安装到 /usr/local/lib 下的库文件。

Protocol Buffers

https://github.com/google/protobuf/releases

google的存储格式协议,类似json

  1. wget https://github.com/google/protobuf/releases/download/v3.0.2/protobuf-cpp-3.0.2.tar.gz
  2. tar -xvf
  3. ./configure
  4. make #编译时间好久
  5. make check
  6. sudo make install
  7. sudo ldconfig # refresh shared library cache.

protoc –version

yasm(for compiling embedded libjpeg-turbo)

Yasm是一个完全重写的NASM汇编。目前,它支持x86和AMD64指令集,接受NASM和GNU汇编器(gas)语法,产出二进制, ELF32 , ELF64 , COFF , Mach - O的( 32和64 ) , RDOFF2 ,的Win32和Win64对象的格式,并生成STABS 调试信息的来源,DWARF 2 ,CodeView 8格式。

看到这用到汇编我就哭了

  1. wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
  2. tar -xf yasm-1.3.0.tar.gz
  3. ./configure
  4. make
  5. make install

运行

  1. rethinkdb
  2. stf local
  3. 在浏览器中输入地址:http://localhost:7100/ 访问客户端。
  4. 如果要远程调试,stf local --public-ip 192.168.153.129 --allow-remote
  5. 有些包没安装报错
  6. cd /usr/local/lib/node_modules/stf/
  7. npm install

其他

各种运行报错,检查错误,然后修复即可

包括http://phantomjs.org/download.html

这个插件的安装,环境变量的添加

npm install jpeg-turbo

openstf安装手记的更多相关文章

  1. SQL Server 2016 CTP2.2 安装手记

    SQL Server 2016 CTP2.2 安装手记 下载一个iso文件,解压出来(大约2.8G左右),在该路径下双击Setup.exe即可开始安装. 安装之前请先安装.NET 3.5 SP1,在服 ...

  2. 树莓派(RespberryPi)安装手记

    购买了两台树莓派,显示器接口是HDMI的,所以需要HDMI高清线连接到显示器,再加上SD卡做硬盘以及无线USB-WIFI,就可以玩一玩树莓派这个小东西了.以下是安装手记. 首先是制作“启动光盘”,其实 ...

  3. GVIM安装手记

    GVIM安装手记 1. 安装GIT及GVIM Downloa Git URL : https://gitforwindows.org/ Downloa GVim URL : https://www.v ...

  4. open-stf 安装篇(linux)

       OpenSTF 百度MTC的远程真机调试 Testin的云真机 腾讯WeTest的云真机 阿里MQC的远程真机租用 什么是OpenSTF? OpenSTF是一个手机设备管理平台,可以对手机进行远 ...

  5. Sulley安装手记

    Sulley折腾手记 序言:sulley是有名的模糊测试架构,可是他的安装十分繁琐,容易出错,以致这么好的工具不被太多人关注,本人大一小白一枚,想入坑sulley,可是网上资料太少,且不连贯,费了九牛 ...

  6. Ubuntu 14.10安装手记

    1. Ubuntu系统安装 按照 www.linuxidc.com/Linux/2014-04/100369.htm 的安装方法即可. 配置文件有两个需要注意的地方.一.搞清楚电脑的分区表,c盘是hd ...

  7. archlinux 安装手记

    Wiki常用软件 https://wiki.archlinux.org/index.php/Common_Applications -> 移动硬盘等的自动挂载 pacman -S gvfs-af ...

  8. GitLab安装手记

    阿里云1G内存20G硬盘 1.首先下载GitLab Deb包(官网附有apt-get安装方式,但国内环境貌似不成功): https://about.gitlab.com/downloads/ 2. d ...

  9. BizTalk 开发系列(四十一) BizTalk 2010 BAM 安装手记

    使用64位系统可以支持更大的内存,现在服务器基本上都使用64位系统.微软从Windows Server 2008 R2开始服务器版的操作系统也只支持64位了,不过对于像BizTalk这种“繁杂的东西” ...

随机推荐

  1. [Lua快速了解一下]Lua的OOP

    __index(a, b) 对应表达式 a.b 上面我们看到有__index这个重载,这个东西主要是重载了find key的操作.这波操作可以让Lua变得有点面向对象的感觉,让其有点像Javascri ...

  2. 深入理解java虚拟机(四)垃圾收集算法及HotSpot实现

    垃圾收集算法 一般来说,垃圾收集算法分为四类: 标记-清除算法 最基础的算法便是标记-清除算法(Mark-Sweep).算法分为“标记”和“清除”两个阶段:首先标记处需要收集的对象,在标记完成之后,再 ...

  3. 楊輝三角C#版

    class Program { static void Main(string[] args) { Console.WriteLine("please input a number:&quo ...

  4. layui与多级联动返填

    <script> layui.use(['form', 'layer'], function () { $ = layui.jquery; var form = layui.form() ...

  5. 使用PLSQL Developer时中文乱码问题

    使用PLSQL Developer时中文乱码问题 一.问题: 执行一些查询结果有中文的SQL语句,显示不了中文,显示???. 二.产生的原因: 客户端与服务器端的编码不一致造成的. 三.解决方案: 1 ...

  6. 来到cnblong dayone

    以前懒得做笔记,csdn上有些小随笔,但是感觉csdn上的广告和积分下载越来越无法忍受了.现在转到cnblog.希望以后能够多写一些随笔吧.也算是一种坚持.听说90天可以养成一种习惯,那么就从现在开始 ...

  7. 【OCP-12c】CUUG最新考试原题整理及答案(071-11)

    11.(5-8) choose the best answer: Examine the structure of the BOOKS_TRANSACTIONS table. You want to ...

  8. js计算机样式window.getComputedStyle(ele,null)2

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. CF666E Forensic Examination(后缀自动机+动态线段树)

    题意 给你一个串 $S$ 以及一个字符串数组 $T[1..m]$ , $q$ 次询问,每次问 $S$ 的子串 $S[p_l..p_r]$ 在 $T[l..r]$ 中的哪个串里的出现次数最多,并输出出现 ...

  10. Python一篇学会多进程

    阅读目录 1. Process 2. Lock 3. Semaphore 4. Event 5. Queue 6. Pipe 7. Pool 序. multiprocessing python 中的多 ...