UIAutomation for iOS Introduction
-
Upload
kohki-nakashima -
Category
Internet
-
view
570 -
download
0
description
Transcript of UIAutomation for iOS Introduction
Photograph by Simon Abrams / https://www.flickr.com/photos/flysi/183272970/
UIAutomationfor iOS
Introduction
@kuronekomichael
Agenda
•1. なぜいま結合テストの自動化?•2. Instrumentsの紹介•3. 注意とアドバイス•4. これからのオートメーション
なぜいま結合テストの自動化?
• ・iOSバージョン iOS5 iOS6 iOS7
• ・端末 3.5inch 4inch iPad iPod Touch..
• ・開発プロセス ウォーターフォール ↓ アジャイル
•
• http://en.wikipedia.org/wiki/Iterative_and_incremental_development
XCode Instruments• ・XCode付属の開発ツール• ・メモリリーク検出• ・CPUリソースの監視• ・ボトルネック検出のためのプロファイリング• ・ファイルシステムへのアクセスを監視
UIAutomation• ・Instrumentsの中の一機能• ・アプリの自動テストをサポートする• ・ユーザ操作をレコーディングして JavaScriptのコードとして出力
• ・JavaScriptのコードを元に、 ユーザ操作を再現するように再生する
•
Instruments
•
/Users/<ユーザ名>/Library/Application Support/iPhone Simulator/<シミュレータのバージョン>/Applications/<アプリのバンドルID>/<アプリ名>.app
AppName.app
AppName.app
AppName.app
AppName.app
AppName.app
スクリプトの保存
•スクリプトエリアの右クリック(セカンダリータップ)からスクリプトの保存(Export)が可能
•
エディタ⇔トレース画面の切り替え AppName.app
AppName.app
Photograph by Simon Abrams / https://www.flickr.com/photos/flysi/183272970/
デモdemonstration
Photograph by Simon Abrams / https://www.flickr.com/photos/flysi/183272970/
注意とアドバイスattention and advice
注意とアドバイス
•・操作記録は、たたき台の生成に近い 手修正がほぼ必須
• ・ログメソッドを使いこなす• UIAElement logElement()• UIAElement logElementTree()• ・日本語資料少ない• ・慣れてきたら編集<=>CLIで実行の方が スムーズかも
https://gist.github.com/kuronekomichael/11032775
CLIから実行するシェルを公開してます(参考用)
APIドキュメント
https://gist.github.com/kuronekomichael/11032094
APIリファレンスをざっくり日本語訳しました(怒られたら消します)
Photograph by Simon Abrams / https://www.flickr.com/photos/flysi/183272970/
これからの結合テストfuture of testing
http://www.w3.org/TR/webdriver/
appium•
Appium recorder
•
• https://github.com/appium/appium-dot-app
Recorderの動作がとってもイケてないので、Instrumentsからのりかえるのに躊躇してます…
Photograph by Simon Abrams / https://www.flickr.com/photos/flysi/183272970/
thanx!御清聴ありがとうございました