1.STFとは
株式会社サイバーエージェントのプレスリリースより
「STF-Smartphone Test Farm」は、開発者が、Android最新機種を含む170超の端末表示をブラウザから簡単に検証することができるシステムです。開発したアプリやウェブサイトをブラウザ上で複数台同時にリモート操作し、デザインチェックを行うことができるほか、システムログを一覧でリアルタイムに取得し、効率的にデバッグを行うことができます。また、ドラッグ&ドロップで簡単にアプリ(.APKファイル)のインストールや実機のリモートシェルコマンド*2の実行等、スマートフォンサービス開発関連事業者にとって便利な機能が揃っています。
主な機能としては以下のものがあるようです。
■「STF-Smartphone Test Farm」機能概要
・スマートフォン・PCから実機のAndroid機を遠隔操作
・簡単にURLブラウジング
・Web上で各端末のリアルタイムログを取得
・ドラッグ&ドロップでアプリ(.APKファイル)のインストール
・複数端末を同時に操作可能
・Android Studio、Eclipse、Chrome Remote Debug Toolsとの連携が可能
・Android端末に送るコマンド全てがブラウザ上で操作可能
・対応OS(2015年6月末現在): Android 2.3~5.1、Preview M、Wear 5.1、Fire OS等
(尚、対応OSはオープンソース化することにより今後増えていく予定です)
詳細については、STFの公式ページも参照して下さい。
2.目的
インストール編では以下のことを目的とします。
※Android端末の接続や遠隔操作については、Android端末接続編で説明します。
- STFのインストールに必要なツールやライブラリをインストールする
- STFをインストールする
- STFを起動する
- ブラウザからSTFにアクセスする
3.前提条件
CentOS 6.7がインストールされた仮想マシンまたは実機
4.STFのインストール
STFのインストールには、以下のツールやライブラリを事前にインストールしておく必要があります。
まずはそれらのインストールを行い、その後にSTFをインストールしていきます。
- node.js
- RethinkDB
- GraphicsMagick
- ZeroMQ
- Protocol Buffers
- yasm
- pkg-config
必要なパッケージのインストール
STFのインストールで必要となるパッケージをyumでインストールしておきます。
yum -y install wget git gcc gcc-c++
node.jsのインストール
node.jsのバージョン管理ツールであるnvmを使って、node.jsをインストールします。
cd /tmp
git clone https://github.com/creationix/nvm.git ~/.nvm
source ~/.nvm/nvm.sh
nvm install 0.12.7
RethinkDBのインストール
yumのリポジトリを追加して、RethinkDBをインストールします。
wget https://download.rethinkdb.com/centos/6/`uname -m`/rethinkdb.repo -O /etc/yum.repos.d/rethinkdb.repo
yum -y install rethinkdb
GraphicsMagickのインストール
GraphicsMagickのバイナリRPMをダウンロードして、yumでインストールします。
# CentOS6.7 32bit版の場合
wget http://mirrors.ustc.edu.cn/fedora/epel/6/i386/GraphicsMagick-1.3.20-3.el6.i686.rpm
yum -y install GraphicsMagick-1.3.20-3.el6.i686.rpm
# CentOS6.7 64bit版の場合
wget http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/GraphicsMagick-1.3.20-3.el6.x86_64.rpm
yum -y install GraphicsMagick-1.3.20-3.el6.x86_64.rpm
ZeroMQのインストール
yumのリポジトリを追加して、ZeroMQをインストールします。
wget http://download.opensuse.org/repositories/home:/fengshuo:/zeromq/CentOS_CentOS-6/home:fengshuo:zeromq.repo -O /etc/yum.repos.d/home:fengshuo:zeromq.repo
yum -y install zeromq zeromq-devel
Protocol Buffersのインストール
Protocol Buffersのソースファイルをコンパイルして、インストールします。
cd /usr/local/src/
wget http://protobuf.googlecode.com/files/protobuf-2.5.0.tar.bz2
tar xjvf protobuf-2.5.0.tar.bz2
cd protobuf-2.5.0
./configure
make
make install
yasmのインストール
yasmのソースファイルをコンパイルして、インストールします。
cd /usr/local/src/
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xvfz yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix=/usr/local
make
make install
pkg-configのインストール
pkg-configのソースファイルをコンパイルして、インストールします。
cd /usr/local/src/
wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.tar.gz
tar zxvf pkg-config-0.29.tar.gz
cd pkg-config-0.29
./configure --with-internal-glib
make
make install
STFのインストール
最後に、node.jsのパッケージマネージャであるnpmを使ってSTFのインストールを行います。
npm install -g stf
5.STFの起動
RethinkDBの起動
STFのデータを格納するDBとして、RethinkDBを起動します。
rethinkdb
コマンドを実行すると、rethinkdb_data
というフォルダが作成され、そこにデータが格納されるようになります。
rethinkdb
STFの起動
他の端末からアクセスできるように、ファイアウォール(iptables)を切っておき、--public-ipオプションに公開用のIPを指定してSTFを起動します。
service iptables stop
stf local --public-ip 192.168.33.10
6.STFへのアクセス
ブラウザのアドレスバーにSTFの公開用のIPアドレスを入力し、STFへアクセスします。ポートは7100番になります。
表示されたログイン画面でユーザ名とメールアドレスを入力して、Log inボタンをクリックします。
STFのTOP画面が表示されました。