
2019/09/07 10:30〜
Track D
レギュラートーク(30分)
スナップショットテスト実戦投入 iOSDC Japan 2019

SnapshotTestingやiOSSnapshotTestCaseなど、
スクリーンショットによる差分検知フレームワークが近年注目されています。
これらは指定した画面のスクリーンショットを自動撮影し、
予期せぬ表示上のデグレを検知してくれる画期的なツールです。
一方私のプロダクトでは、状態再現の手間から来るQAコストの増加や
新しいUI作成時の仕様認識のズレなどが課題となっていました。
そこで改善のためSnapshotTestingを導入しQAコストの削減に取り組むことにました。
しかし当然ながら、単純にViewを渡すだけではうまくいきません。
なぜなら導入までに、下記のような下準備が必要なためです。
- API通信をモックする
- 必要な状態をモックできるレスポンスを考える
- アプリ内フラグやログインをモックする
- UIのモックが可能な設計にする
- 自動テストとの連携
なかなか一筋縄ではいかない導入でしたが、
結果として画面のカタログを作成しデグレ検知に成功しました。
本トークではスナップショットテストの導入にあたり、
注意すべき点や知っておくと良い点についてお話します。
導入のメリットに見合うかどうか、自身のプロダクトが抱えている課題を解決できそうか、
その参考となる情報を提供できればと思います。