iOS Test Night #3で発表しました。
2017年3月13日、株式会社ディー・エヌ・エーでiOS Test Night #3というイベントが行われました。
イベント概要
本イベントはiOSにおけるテスト周りに関する知識を共有することを目的としたものです。
テスト周りに関するものであれば何でもOKです。 例をあげるとすれば以下のようなものなどです。
- テストをはじめてみた&ここで苦労した
- このテスティングフレームワークはここがハマりどころ
- テスティングフレームワークをこうやって使い分けている
- こうやって工夫してテストしている
- オレが考えるiOSアプリにおけるテスタビリティの高い設計
- 弊社のCI/CD環境はこんな感じにしている
- try!Swiftの話を聞いてテストをはじめてみた
iOS開発のテストを共有するイベントです!
自分の発表内容
私は5分枠で発表をしてきました。
資料はこちら。
AWSのスマフォアプリ、webアプリのテストサービスDeviceFarmでiOSのUIテストのやり方を発表しました。
Twitterの反応
デバイスと、OSのマイナーバージョン集めるの死ぬ#ios_test_night
— 荒木敦 (@applideveloper) March 13, 2017
Device Farm 0.17$/minなのか #ios_test_night
— try! Switch koutalou (@koutalou) March 13, 2017
Device Farmは、iOSも対応したのか! #ios_test_night
— 荒木敦 (@applideveloper) March 13, 2017
iOS7.1から取り揃えてあるなんてすごい #ios_test_night
— merge (@color_box) March 13, 2017
「Push通知を許可しますか」のアラート出たら絶対OK押してくれる何かとかが欲しい #ios_test_night
— yokoya-s (@yokoyas000) March 13, 2017
おーやっぱグローバル版なのか、差分があると辛そう #ios_test_night
— try! Switch koutalou (@koutalou) March 13, 2017
補足: DeviceFarmが用意しているAndroid端末がグローバル版のみであることの反応です。日本のAndroidはキャリアがけっこうカスタ>マイズしているがそのテストはできないです。
Archiveでアーカイブ #ios_test_night
— ダンボー田中<T: Status> (@ktanaka117) March 13, 2017
Save for Development使ったことない #ios_test_night
— try! Switch koutalou (@koutalou) March 13, 2017
自前で iOS ビルドクラスタ持ってるけど、キャッシュ効いてくれるので嬉しい(けど、キャッシュで死んだりもする) #ios_test_night
— Kuniwak (@orga_chem) March 13, 2017
Device Farmは最初の方はUIテストしかできなかったけど、去年からリモートコントロールでブラウザから自由に画面操作も出来るようになってたの良かったなー #ios_test_night
— ワニ@tmk (@alligator_tama) March 13, 2017
AWS Device FarmはJenkinsのプラグインもあるので、比較的さくっと始められたりはする(お金が問題ですが)。 #ios_test_night
— とし (@tarappo) March 13, 2017
`accessibilityIdentifier` 大事 #ios_test_night
— かっくん (@fromkk) March 13, 2017
accesibilityIdentifierは、かぶると落ちるので、セルの時は、一意にしないといけない #ios_test_night
— 荒木敦 (@applideveloper) March 13, 2017
cellのときは一意にしないといけないのか。
これは知らなかったです。
気をつけよう。
Product ディレクトリ全然触ったことなかったw #ios_test_night
— スターホシ (@star__hoshi) March 13, 2017
あのむっちゃ深い場所にあるファイル、Xcodeからなら一発で到達できるのか・・・ #ios_test_night
— merge (@color_box) March 13, 2017
IPA こんな簡単に作れたのか https://t.co/SbbKib7iHp #ios_test_night
— Kuniwak (@orga_chem) March 13, 2017
ipa ファイルってただのZip ファイルなのよね #ios_test_night
— よこち / Hayato YOKOTA (@yokochie) March 13, 2017
この辺はxcodebuild -derivedDataPathとかでカレントに方に置いて*.appとか検索してでサクッと取れるようにする事が多いかな。 #ios_test_night
— ワニ@tmk (@alligator_tama) March 13, 2017
これ fastlane で一発で生成して投げるところまでやってほしい #ios_test_night
— スターホシ (@star__hoshi) March 13, 2017
「みなさん日本語で話すよりコマンドで話したほうがわかりますよね」 #ios_test_night
— ダンボー田中<T: Status> (@ktanaka117) March 13, 2017
緯度経度、通信状態を設定できるのか #ios_test_night
— よこち / Hayato YOKOTA (@yokochie) March 13, 2017
設定アプリで設定できる通信環境設定できるのかな、それとも別のLayerで設定してるんだろうか気になる #ios_test_night
— try! Switch koutalou (@koutalou) March 13, 2017
AWS Device Firm、去年調査した時に調子こいて複数端末走らせて無料時間ギリギリになって焦った記憶 #ios_test_night
— Mr.Pinky (@pbw_jp) March 13, 2017
Firebase Test LabがiOS対応もして価格競争おきてくれたらいいのになと思っている。 #ios_test_night
— とし (@tarappo) March 13, 2017
デバイスとマイナーOSを買って揃えるのは結構なコストなのでコスパ良さそう #ios_test_night
— 荒木敦 (@applideveloper) March 13, 2017
デモは動画が一番!(マウンティング #ios_test_night
— try! Switch koutalou (@koutalou) March 13, 2017
デモをするときにスクリーンに画面をミラーリングできないハプニングがあったのです。
デモは動画が一番ですね。
XCUIテストのツラミ
ツイートの反応でもありましたが、懇親会でも話していてシステムアラートをOKを押す方法で詰まる場合が皆さんあるみたいでした。
あとでqiitaにでもまとめようかと思います。
けっこうXCUIテスト癖がありますね。
UIRecordがけっこうウソをつくことがあって、乗り越え方が大変です。
まとめ
DNA社内 すてきなオフィス
Device Farmは社内で取り入れて、けっこうテスト時間の節約になってます。
テストケースを作るのが時間がかかるのが難点なのですが。。
いつも少人数の勉強会を開催していたので、100人近い人数の前での発表はすこしうろたえました。
ツイッターでの反応をみるととてもうれしいです。