Submit Search
Upload
Cocoa勉強会201203公開
•
Download as KEY, PDF
•
3 likes
•
1,803 views
Satoshi Oomori
Follow
Cocoa勉強会 2012年3月24日大森分UIテストの自動化
Read less
Read more
Technology
Report
Share
Report
Share
1 of 94
Download now
Recommended
クラウド移住で地方に住むということ
クラウド移住で地方に住むということ
Takehito Tanabe
Artificial glacier
Artificial glacier
INDIA
Watershed management
Watershed management
Shrikant Jahagirdar
Rainwater harvesting and watershed management
Rainwater harvesting and watershed management
Pranay Krishnan
Rain water harvesting ppt
Rain water harvesting ppt
Palash Jain
Presentation watershed
Presentation watershed
akshitakohli
Cocoa勉強会関西2012年5月
Cocoa勉強会関西2012年5月
Satoshi Oomori
Unity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみた
Mori Tetsuya
Recommended
クラウド移住で地方に住むということ
クラウド移住で地方に住むということ
Takehito Tanabe
Artificial glacier
Artificial glacier
INDIA
Watershed management
Watershed management
Shrikant Jahagirdar
Rainwater harvesting and watershed management
Rainwater harvesting and watershed management
Pranay Krishnan
Rain water harvesting ppt
Rain water harvesting ppt
Palash Jain
Presentation watershed
Presentation watershed
akshitakohli
Cocoa勉強会関西2012年5月
Cocoa勉強会関西2012年5月
Satoshi Oomori
Unity 5.3 の In-App Purchase を試してみた
Unity 5.3 の In-App Purchase を試してみた
Mori Tetsuya
Cocoa勉強会20140621 macとiosで共通のコード
Cocoa勉強会20140621 macとiosで共通のコード
Satoshi Oomori
Cocoa勉強会20140419ゲームをつくってみる
Cocoa勉強会20140419ゲームをつくってみる
Satoshi Oomori
Word net cocoa勉強会201306
Word net cocoa勉強会201306
Satoshi Oomori
Scene kit cocoa勉強会201306
Scene kit cocoa勉強会201306
Satoshi Oomori
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Satoshi Oomori
Cocoa勉強会201302
Cocoa勉強会201302
Satoshi Oomori
Cocoa勉強会201208
Cocoa勉強会201208
Satoshi Oomori
Cocoa勉強会2011年11月
Cocoa勉強会2011年11月
Satoshi Oomori
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
More Related Content
More from Satoshi Oomori
Cocoa勉強会20140621 macとiosで共通のコード
Cocoa勉強会20140621 macとiosで共通のコード
Satoshi Oomori
Cocoa勉強会20140419ゲームをつくってみる
Cocoa勉強会20140419ゲームをつくってみる
Satoshi Oomori
Word net cocoa勉強会201306
Word net cocoa勉強会201306
Satoshi Oomori
Scene kit cocoa勉強会201306
Scene kit cocoa勉強会201306
Satoshi Oomori
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Satoshi Oomori
Cocoa勉強会201302
Cocoa勉強会201302
Satoshi Oomori
Cocoa勉強会201208
Cocoa勉強会201208
Satoshi Oomori
Cocoa勉強会2011年11月
Cocoa勉強会2011年11月
Satoshi Oomori
More from Satoshi Oomori
(8)
Cocoa勉強会20140621 macとiosで共通のコード
Cocoa勉強会20140621 macとiosで共通のコード
Cocoa勉強会20140419ゲームをつくってみる
Cocoa勉強会20140419ゲームをつくってみる
Word net cocoa勉強会201306
Word net cocoa勉強会201306
Scene kit cocoa勉強会201306
Scene kit cocoa勉強会201306
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会ビギナーズramディスクとコマンドファイル
Cocoa勉強会201302
Cocoa勉強会201302
Cocoa勉強会201208
Cocoa勉強会201208
Cocoa勉強会2011年11月
Cocoa勉強会2011年11月
Recently uploaded
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Recently uploaded
(11)
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Cocoa勉強会201203公開
1.
UIテストの自動化 UIAutomationを使って
2012.3.24 Cocoa勉強会 大森智史(@oogon)
2.
あんた、誰?
3.
と、いうことで...
4.
ごあいさつ
5.
ごあいさつ • 大森智史(おおもり さとし)です。
6.
ごあいさつ • 大森智史(おおもり さとし)です。 • Objective-C書いて遊んでます。
7.
8.
• というとこで、ICカードとか売ってま す。(システムまるごと)
9.
• というとこで、ICカードとか売ってま す。(システムまるごと) •
iPhoneもそろそろNFCとか来そうだし
10.
• というとこで、ICカードとか売ってま す。(システムまるごと) •
iPhoneもそろそろNFCとか来そうだし • 何か案件があれば、どうぞ!
11.
挨拶終わり
12.
では、本題。
13.
本日の内容
14.
本日の内容 • iOSのUIテストの自動化の説明します。
15.
本日の内容 • iOSのUIテストの自動化の説明します。 • どのようにするかの方法を説明します。
16.
本日の内容 • iOSのUIテストの自動化の説明します。 • どのようにするかの方法を説明します。
スライド、サンプルは後ほどSlidShareとGithubに置きます。
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
テストしましょう!
28.
インターフェースの • どうやってますか? • 自分でボタン押して...スライドして...ボ
タン押して...
29.
面倒ですね
30.
面倒な作業は Macに
31.
32.
そこで
33.
どうするの?
34.
コードを書きます
35.
どんな?
36.
JavaScript!
37.
こんな感じ!
38.
どこに?
39.
Instrument! • iOS 5からはコマンドラインからも使える
らしい。
40.
作り方 • XcodeからProfile実行 • Automationモジュールを選択
41.
• Script >
Add
42.
• Create • Scriptエディタ
に書いていき ます
43.
• 自動記録もできます。 仮の名前になるので、後で修正するべし。
44.
どんなことが
45.
1.ボタン押したり タッチ、スライド、 ピンチ
など
46.
2.オブジェクトが 何個あるかの検証
47.
3.テストが成功した か失敗したかの記録
48.
4.GPSなどの現在地
が 変更できます。
49.
もう、京阪デバッグ
とは おさらばだ!
50.
5.指定サイズのスク リーンショット。
51.
6.音量調節。
52.
どんなふうに 書くの?
53.
まず最初
54.
//変数targetにデバッグターゲットをセット var target = UIATarget.localTarget(); //ログ記録開始 UIALogger.logStart("テストスタート Starting
Test:"+ target.model());
55.
オブジェクトを 変数にいれとく
56.
//変数viewに現在のメインウインドウを セット var view = UIATarget.localTarget().frontMost App().mainWindow();
57.
位置の セット
58.
//現在の位置をセット target.setLocationWithOptions( {latitude: 35.029500,longitude: 135.772700}, {horizontalAccuracy:10.0, altitude:20.0});
59.
画面撮影
60.
//画面を撮影 target.captureScreenWithName("loc ation3");
61.
音量下げる
62.
//音量下げる target.clickVolumeDown();
63.
ドラッグ
64.
//指定位置でドラッグ target.dragFromToForDuration({x: 15, y:114}, {x:150,
y:114}, 5);
65.
デバイスの向き変更
66.
//デバイスの向きを変える target.setDeviceOrientation(UIA_D EVICE_ORIENTATION_LANDSCAPERIGHT) ;
67.
判定
68.
//判定 if (textfields.length !=
0) { UIALogger.logFail("ERROR"); } else { UIALogger.logPass("OK"); }
69.
UIAutomationのリ ファレンスをみれば もっといろいろあり
ます。
70.
ターゲット
71.
iPhoneシミュレータ iPadシミュレータ
実機
72.
テストを 実行するには?
73.
Recordで実行します
74.
1つ注意点!
75.
コードを修正して 普通にビルドしても 古いアプリケーション
76.
プロジェクトの修正 をしたら...
77.
Build for Profiling! これで実行される アプリケーションが
78.
Build for Profiling! これで実行される アプリケーションが
79.
大事なので もう一度
80.
Build for Profiling!
81.
Build for Profiling!
82.
それではDEMO
83.
DEMO
84.
まとめ1
85.
まとめ1 • XcodeでProfileを実行。Automationモジュール。
86.
まとめ1 • XcodeでProfileを実行。Automationモジュール。 • JavaScriptを書きます。UIAutomation参照。
87.
まとめ1 • XcodeでProfileを実行。Automationモジュール。 • JavaScriptを書きます。UIAutomation参照。 •
ターゲット別にテスト可能。
88.
まとめ2
89.
まとめ2 • UIパーツがどういう状態かを知ることができる
90.
まとめ2 • UIパーツがどういう状態かを知ることができる • 位置情報、向きなどデバイスの状態を変更できる
91.
まとめ2 • UIパーツがどういう状態かを知ることができる • 位置情報、向きなどデバイスの状態を変更できる •
忘れないで! Build for Profiling
92.
ありがとう
93.
何か質問など?
94.
ありがとう
Editor's Notes
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Download now