この記事はSelenium/Appiumアドベントカレンダー2015の20日目の記事です。
@gluelan2013 さんからバトンが渡ってきました。 @akasakas です。去年に続き、Selenium/Appiumアドベントカレンダーに参加させて頂きます。よろしくお願いいたします。
※去年の記事はコチラです
SeleniumWebdriver で Jenkins から Firefox 多重起動時 の 「e is null」エラー対処法
いままでは主にSeleniumをRubyで書いてましたが、今回Appiumを初めてさわってみたので、「Appiumはじめの一歩」として環境構築と動作確認までをまとめてみました。
環境構築
appium の導入は楽です。
appium.ioにも書いてありますが、下記4行で終わりです。
$ brew install node
$ npm install -g appium
$ npm install wd
$ appium &
いまくいかなかったら、sudo とかしたり node 入れ直したりしてください。
ぼくはnode入れ直したり、下記のエントリを参考にさせて、ごにょごにょしたら、うまくいきました。なので、めっちゃ時間かかりました。。。
CUIからの実行
コマンドからは下記のような感じで実行&終了ができます。
> appium & # start appium
> ruby appium.rb # execute appium script
> killall -9 node # exit appium
GUI
AppiumのGUIはこんな感じです。
Appium Inspector
上の画像にある。左上から3つ目のお医者さんマーク的なやつをクリックするとAppium Inspector なるものが出てきます。
エレメントの調査とかRecordができて、スクリプトも作ってくれる優れもの
ただ、ちょいちょい固まる。。。
サンプルコード実行
環境が整ったら、動かしてみましょう。
ご丁寧にもサンプルコードがあるので、そいつを拝借。
Xcodeインストール済み
もろもろ準備です。
$ git clone git@github.com:appium/sample-code.git
$ cd sample-code/sample-code/examples/ruby/ # ruby でやります。
$ bundle install
$ rspec --init
下記のコマンドで実行できます。
rspec simple_test.rb
雑感
喜び
- Seleniumの知識は流用できる
- エレメントの指定ぐらい
- バージョン・機種違いで同じテストを並列実行できたら夢が広がる
辛み
- ネイティブのことも理解していないとしんどい
- Android iOSのビルド周りとか、もうわからんです
- アプリ起動はブラウザよりも遅いかも
- インスペクターおっそい。。。
- ちょいちょい固まるのはちょっと・・・
最後に
読んで頂いた方、ありがとうございました。
明日は @itaru さんです。よろしくお願い致します