How the Google+ Team Tests Mobile Apps*1 を3行でまとめるブログ。
ユニットテスト
- iOS SDK標準のOCUnit(SenTestingKit)を使う
- Google Toolbox for Mac付属のGTMSenTestcaseクラスもいい。
次のSDKからSenTestingKitは外れるらしいんだけど代替のアップル製のテストフレームワークはSenTestingKitのAPIと互換性がある代替APIがあるというので使い方の意識する必要はなさそう。OCUnitはもともと個人開発者が公開してた昔からある秘伝のソースだからたぶん中身をモダーンに書き直したんじゃないかなーと勝手に予想してる。
GTMは正直iOS開発じゃもうそんなに使わんだろと言っていたけど結構メンテされてるし今度見てみます。
https://code.google.com/p/google-toolbox-for-mac/source/list
UIテスト
- KIF 使ってる
- アプリと同じObjective-Cで書ける
- テスト時にだけ通信先をモックサーバーにしてテスト用のレスポンスを返したり
自由なソフトウェアの中ではKIFがよいよね。近々2系になるらしい
テストコードからプロダクトコードのクラス呼び出したりテスト用のバックドア仕込みたい場合なんかはAPPバンドルの外からしかテスト実行できない他のツールはツラいと思う。
バックエンドテスト
- クライアントとバックエンドサーバーの統合の為のテスト
- アプリから発行されるリクエストを再現しバックエンドサーバーが適切なレスポンスを返すかを検証する
- Google+ のバックエンドはGuiceを使ってテストをやりやすくしてる
以下バックエンドテストについてリプレイテストの概要をあらした図の引用。ゴールデンリクエストみたいな用語はニュアンスはわかるがことばの意味は知らない。
まとめ
Androidアプリテスト技法 や 入門Androidアプリケーションテスト をチラっと読んだけどAndroid開発環境のがアクセスできる範囲が広いのか、Javaコミュニティのテスト文化からなのかテスト環境が充実している。
- 作者: 生路茂太,井芹洋輝,神原健一,長谷川孝二,松木晋祐,宮田友美,吉澤毅
- 出版社/メーカー: 秀和システム
- 発売日: 2013/02/01
- メディア: 単行本
- この商品を含むブログ (7件) を見る
- 作者: 瀬戸直喜/株式会社ブリリアントサービス
- 出版社/メーカー: オライリージャパン
- 発売日: 2013/05/25
- メディア: 大型本
- この商品を含むブログ (2件) を見る
が、iOSアプリ開発もだんだん人口が増えてきてテスト環境整備されてきたのでよかった(日記)。
iOSアプリテストについての書籍は洋書なんだけど"Test-Driven iOS Development" と "Test iOS Apps With Ui Automation"が内容充実してて買って損はなかった。翻訳されて広まって欲しい。
Test-Driven iOS Development (Developer's Library)
- 作者: Graham Lee
- 出版社/メーカー: Addison-Wesley Professional
- 発売日: 2012/04/12
- メディア: Kindle版
- この商品を含むブログを見る
Test iOS Apps with UI Automation: Bug Hunting Made Easy
- 作者: Jonathan Penn
- 出版社/メーカー: Pragmatic Bookshelf
- 発売日: 2013/08/11
- メディア: ペーパーバック
- この商品を含むブログを見る