その2はこちら↓
[appium導入 その2] iOSアプリのサンプルテストコード(Ruby)を動かすまで - Qiita
背景
AppiumでiPhoneアプリの自動テストを試したい! だけど私のPCがWindowsでやりにくい!(Xcode的な意味で) ということで、余ってた(うそ)macを貸してもらって、そこでappiumを動かせるようになるまでの道のりをメモしておきます。
appiumとは?
AppiumとはSelenium作者のJason Huggins氏を中心に開発されているスマホやタブレットのテスト自動化を実現するためのテストフレームワークの一種です。
「Appiumの使い方」を分かり易くまとめてみました!より引用
環境
ハードウェア
モノ | スペック |
---|---|
マシン | Mac mini (Mid 2011) |
mac OS | 10.11.4 |
プロセッサ | 2.5GHz Intel Core i5 |
メモリ | 8GB |
ソフトウェア
まっさらな状態のmacをもらいました。これから下記のものをインストールしていきます。
モノ | バージョン |
---|---|
Xcode | 7.3 (7D175) |
Homebrew | 0.9.5 |
nvm | 0.31.0 |
npm | 2.14.20 |
node | 4.4.1 |
appium | 1.5.0 |
作業ユーザー、ディレクトリ
項目 | 値 |
---|---|
ユーザー | sakaimo |
ディレクトリ | /Users/sakaimo/repos |
Xcodeのインストール
AppStoreからですが、ダウンロードに15分〜20分くらいかかりました。辛抱して待つ。
ダウンロードしたら一度起動して、利用規約に同意しておきます。(そうじゃないと次のHomebrewインストールができない) ちなみに私はXcodeでの開発経験はほぼゼロです。次回出てくるサンプルコードをダウンロードして動かす、程度の知識です。
Homebrewのインストール
参照:Homebrew — OS X 用パッケージマネージャー
root権限が必要なのでsudoしました↓
$ sudo /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew -v
Homebrew 0.9.5 (git revision d700; last commit 2016-03-28)
nvmとnpmとnodeをインストール
参照:Appiumを使えるようになるまで(Mac編) - Qiita
あと、nvmはNode Version Managerのことだそうです。
cloneする
$ git clone git://github.com/creationix/nvm.git ~/.nvm
$ source ~/.nvm/nvm.sh
$ nvm --version
0.31.0
ついでに ~/.bash_profile
に下記を追記します。(次にターミナル開いた時に読み込むため)
source ~/.nvm/nvm.sh
バージョンを確認してインストール
インストール可能なバージョンリスト
$ nvm ls-remote
(ずらーっと出てくる)
Node.js 5.0がリリース。奇数バージョンは最新機能版、偶数バージョンは長期サポート版 - Publickeyによると
奇数バージョンは最新機能版、偶数バージョンが長期サポート版
との事なので、この時点で最新の安定版(長期サポート版)を入れてみます。
※ sudo
しないこと!(後述)
$ nvm install v4.4.1
$ node -v
v4.4.1
よし。
そしていつの間にか入ってたnpm(Node Package Manager)
$ npm -v
2.14.20
# JDKのインストール
Java Developer Kitが入ってないとappiumインストール時に下記のようなメッセージが出てインストールが止まってしまいます。
なので、JDKを入れます。
- Java SE - Downloads | Oracle Technology Network | Oracle に行って
- JDKの「Download」をクリックして
- 次ページで[Mac OS X] をダウンロード
- ダウンロードしたdmgファイルをダブルクリックしてインストール
$ java -version
java version "1.8.0_77"
余談:dmgファイルって何?
Mac初心者必見!.dmgファイルとは?ソフト(アプリ)のインストール方法 | Leeway's Life Log
dmgファイルとは、Windowsでいう「.iso」などと同じ仮想ディスクイメージです。
だそうです。
appiumのインストール
Appium: モバイルアプリのテスト自動化はすごいことになった
によると
Make sure you have not installed Node or Appium with sudo, otherwise you'll run into problems
てことなので、NodeとAppiumはsudoで入れちゃだめのようです。
$ npm install -g appium
$ appium -v
1.5.0
キタ━━━━(゚∀゚)━━━━!!
他の記事を見ると、この後
$ appium-doctor
するといいよって書いてあるのですが、
$ appium-doctor
-bash: appium-doctor: command not found
ってなるのですよね。
appium-doctorのインストール
なければ入れろ、ということで。
$ npm install -g appium-doctor
でインストール完了。この後に
$ appium-doctor --ios
(中略)
info AppiumDoctor The following command need be executed: xcode-select --install
? Fix it: (Use arrow keys)
❯ yes
no
always
never
yesでreturnをすると途中で下記のメッセージ
が表示されたので「インストール」をクリック。
インストール完了後に下記を実行して、
$ appium-doctor --ios
info AppiumDoctor ### Diagnostic starting ###
info AppiumDoctor ✔ Xcode is installed at: /Applications/Xcode.app/Contents/Developer
info AppiumDoctor ✔ Xcode Command Line Tools are installed.
info AppiumDoctor ✔ DevToolsSecurity is enabled.
info AppiumDoctor ✔ The Authorization DB is set up properly.
info AppiumDoctor ✔ The Node.js binary was found at: /Users/sakaimo/.nvm/versions/node/v4.4.1/bin/node
info AppiumDoctor ✔ HOME is set to: /Users/sakaimo
info AppiumDoctor ### Diagnostic completed, no fix needed. ###
info AppiumDoctor
info AppiumDoctor Everything looks good, bye!
ってなればOK!
ちなみにandroidアプリのための環境を確認したいときは--android
オプションで確認できます。
$ appium-doctor --android
info AppiumDoctor ### Diagnostic starting ###
WARN AppiumDoctor ✖ ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ JAVA_HOME is NOT set!
WARN AppiumDoctor ✖ adb could not be found because ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ android could not be found because ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ emulator could not be found because ANDROID_HOME is NOT set!
info AppiumDoctor ### Diagnostic completed, 5 fixes needed. ###
info AppiumDoctor
info AppiumDoctor ### Manual Fixes Needed ###
info AppiumDoctor The configuration cannot be automatically fixed, please do the following first:
WARN AppiumDoctor - Manually configure ANDROID_HOME.
WARN AppiumDoctor - Manually configure JAVA_HOME.
WARN AppiumDoctor - Manually configure ANDROID_HOME and run appium-doctor again.
info AppiumDoctor ###
info AppiumDoctor
info AppiumDoctor Bye, run appium-doctor again when the all the manual fixes have been applied!
android用の環境は整ってないようです。(今回はiOSアプリだからスルーしちゃう)
参照:GitHub - appium/appium-doctor: Tool to verify appium installation
今回はここまで
これでappiumでiOSアプリを動かす(という表現でいいのかな)準備ができたようです。次回はサンプルコードを使って実際にアプリを動かしてみますー。