Instruments の UI Recorder という機能を使って、iPhone シュミレータでの UI テストを自動化するというチュートリアルが紹介されていました。

iCodeBlog ? Blog Archive ? Debugging Tutorial ? Automating Your Tests With A UIRecorder Instrument

UI Recorder は知らなかったので早速試してみたところなかなか興味深かったので紹介したいと思います。

Webアプリケーションのテストツールである Selenium に近い感じのものです。ユニットテストではなく UI のテストに近いです。

準備

システム環境設定の「ユニバーサルアクセス」で下から2番目にある「補助装置にアクセスできるようにする」というチェックボックスのチェックが入っていることを確認してください。
スクリーンショット(2009-10-08 10-8木 13.20.21)

これがチェックされていないと UI Recorder を実行したときに以下のようなエラーメッセージが表示されて実行できません。
スクリーンショット(2009-10-08 10-8木 13.21.11)

UI Recorder で記録する

Xcode からテストしたいアプリを iPhone シュミレータで起動します。次に Instruments を起動して、テンプレートの「UI Recorder」を選択します。
スクリーンショット(2009-10-08 10-8木 13.20.41)

スクリーンショット(2009-10-08 10-8木 13.22.10)
起動後、左上にある「Launch Executable…」から iPhone シュミレータを選択します。左上にある「Record」ボタンを押し、記録を開始した後に iPhone シュミレータをマウスで操作します。

一通りテストしたら、「Stop」ボタンを押して記録を停止します。

テストの自動実行

記録が終わると「Record」ボタンが「Drive&Record」になっています。このボタンを押すと記録された通りにマウスが自動的に動きテストが行われます!

記録をしなおしたいときは「User Interface」の横にある情報ボタン(i) をクリックして、Action を Capture に切り替えれば再度記録できます。
スクリーンショット(2009-10-08 10-8木 17.08.19)

iCodeBlog – Debugging Tutorial – Automating Your Tests With A UIRecorder Instrument from Brandon Trebitowski on Vimeo.

関連する投稿