1. 概要
以下のドキュメントを元に構成しています。
http://appium.io/slate/en/tutorial/ios.html
この記事のとおりやると、Appium をつかって iOS アプリを JUnit でテストしたり、Appium Ruby Console(ARC) でアプリのインスペクトできたりします。
↓実際に Appium でテストしているときのスクリーンをキャプチャしてみました。
動画リンク:https://www.youtube.com/watch?v=Ka2QbZys-8I
2. インストール前後の環境
Mac OSX 10.10.4
Xcode N/A -> 6.4
Ruby ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14] -> 2.2.2
RVM N/A -> 1.26.11
Java N/A -> 1.8.0_45
Homebrew N/A -> 0.9.5
Node.js N/A -> 0.12.6
NPM N/A -> 2.12.1
grunt N/A -> 0.4.5
ant N/A -> 1.9.5
Maven N/A -> 3.3.3
3. Xcode セットアップ
まずは、 AppStore から Xcode をダウンロード&インストールして、一度だけ起動しておいてください。
4. Java セットアップ
4-1. Java をダウンロード&インストール
http://www.oracle.com/technetwork/java/javase/downloads/index.html
[JDK Download] をクリック。 [Ma OS X x64] を選択して [jdk-8u45-macosx-x64.dmg] をダウンロード
4-2. インストール完了後にバージョンチェック
$ java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
5. Homebrew セットアップ
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew update
6. Ruby セットアップ
6-1. Ruby をインストール
$ \curl -sSL https://get.rvm.io | bash -s stable
$ source ~/.rvm/scripts/rvm
$ rvm install ruby
$ rvm list
$ rvm --default use 2.2.2
$ ruby —version
6-2. Gem, Bundler アップデート
$ gem update --system
$ gem install --no-rdoc --no-ri bundler
$ gem update
$ gem cleanup
$ gem --version
6-3. appium_console インストール
$ gem uninstall -aIx appium_lib
$ gem uninstall -aIx appium_console
$ gem install --no-rdoc --no-ri appium_console
6-4. flaky インストール
$ gem uninstall -aIx flaky
$ gem install --no-rdoc --no-ri flaky
7. Node.js セットアップ
既に Node をパッケージインストーラーでインストールしており、バージョンが適合しないような場合は、NPM と Node を 7-1. 7-2. の手順で事前にアンインストールする必要があるかもしれません。
7-1. npm アンインストール
sudo npm uninstall npm -g
7-2. node アンインストール
lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom \
| while read i; do
sudo rm /usr/local/${i}
done
sudo rm -rf /usr/local/lib/node \
/usr/local/lib/node_modules \
/var/db/receipts/org.nodejs.*
7-3. node, npm インストール
$ brew install node
$ node --version
$ npm --version
7-4. grunt インストール
$ npm install -g grunt grunt-cli
$ grunt --version
8. Ant, Maven セットアップ
$ brew install ant
$ brew install maven
$ ant -version
$ mvn -version
9. Appium セットアップ
9-1. appium を Clone
$ cd ~
$ git clone git://github.com/appium/appium.git
$ cd appium
$ ./reset.sh --ios --dev --verbose
9-2. appium 起動
$ node .
10. JUnit のための iOS サンプルアプリ (TestApp) をビルド
10-1. 別のターミナルウィンドウを起動
10-2. サンプルディレクトリにあるテストアプリをビルド
$ cd ~/appium/sample-code/apps/TestApp/
$ xcodebuild -configuration Release -sdk iphonesimulator8.4
※"8.4" はインストールしている iOS SDK のカレントバージョンです。
11. JUnit サンプルプログラム (SimpleTest.java) を起動
11-1. SimpleTest.java を編集
$ vi ~/appium/sample-code/examples/java/junit/src/test/java/com/saucelabs/appium/SimpleTest.java
- capabilities.setCapability("platformVersion", "8.1");
+ capabilities.setCapability("platformVersion", "8.4");
11-2. テスト開始
$ cd ~/appium/sample-code/examples/java/junit
$ mvn test -Dtest=com.saucelabs.appium.SimpleTest#testUIComputation
12. ARC のために iOS サンプルアプリをビルド
$ cd ~/appium/sample-code/apps/UICatalog/
$ xcodebuild -configuration Release -sdk iphonesimulator8.4
13. Appium Ruby Console (ARC) を起動&実行
$ cd ~/appium/sample-code/apps/UICatalog/
$ vi appium.txt
[caps]
platformName = "ios"
deviceName = "iPhone 6"
platformVersion = "8.4"
app = "./build/Release-iphonesimulator/UICatalog.app"
$ arc
With the console started, the next step is to begin automation. The pagecommand prints a list of elements that are of interest.
[1] pry(main)> page
※ARC コマンド:
http://appium.io/slate/en/tutorial/ios.html?ruby#page-command
免責
個人の意見です。