LoginSignup
4
5

More than 5 years have passed since last update.

UITest自動化を試してみた

Last updated at Posted at 2016-06-08

背景

仕事でUITestの自動化をいろいろ試してみたのでその時のメモ

結論

iOSやるときはApple純正が一番学習コストが低い

試してみたUITest

  • Appium
  • XCUITest
  • KIF

感想

Appium

  • 周りに知っている人がいない人に対しては学習コストが高い
  • サンプルが世の中に少ない
  • Inspecterでレコーディングの途中でアプリが落ちる
  • Inspecterしているとき一つ一つのアクションを記録するのにすごく時間がかかる
  • Inspecterだけでコーディングするのは不可能だと思われる
  • InspecterはGUIでしか使えないっぽい?
  • GUIでAppiumサーバーを立てるとログが見にくいのでCUIで立ててGUIのInspecterで要素の確認を行うのがbetterだと思う
  • Androidも使える

問題点

  • WKWebViewは座標タップに対応していない(issueで上がってたからいつか直るといいな,まぁissueは半年くらい放置されていたけど。。。)

XCUITest

  • Xcode7から標準搭載
  • iOS9以上から対応
  • レコーディング機能があるがアニメーション等がある場合waitがないと画面が描画される前にテストが流れきってしまう
  • Apple公式
  • 特定の座標をタップするやり方が謎

KIF

  • AccessibilityLabelを設定してないと使い物にならない可能性がある
    理由:Elementを探すのにAccessibilityLabelを使っているため、ソースを見たがXPathとか他の指定方法がなさそう

  • UIAccessibilityElementを使ってUIテストを実施しているがApple的には非公開?(リファレンスに詳細がない)っぽい

まとめ

どれも長所短所がありこれ使えば最強というのはまだないイメージ
XCUITestがObjective-c,Swiftともに資産が生かせるのでiOSのUITest的には便利そう
ただWebViewないの要素がタップできないのが難点
今後座標タップが実装されるのを期待

各UITestの使い方はググってください。。。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5