instrument 是什么?
instrument是性能分析、動態跟蹤和分析OS X和iOS代碼的測試工具。它是一個靈活的和強大的工具,可以讓您追蹤程序運行的過程,收集數據,并檢查所收集的數據。這樣instrument就可以幫助你了解用戶的應用程序和操作系統的行為。
instrument能做的事情:
1.Instruments是用于動態調追蹤和分析OS X和iOS的代碼的性能分析和測試工具;
2.Instruments支持多線程的調試;
3.可以用Instruments去錄制和回放,圖形用戶界面的操作過程
4.可將錄制的圖形界面操作和Instruments保存為模板,供以后訪問使用。
instrument 可以對于我們來說,有哪些用武之地?
我們可以使用Instruments做的事情:
1.追蹤代碼中的(甚至是那些難以復制的)問題;
2.分析程序的性能;
3.實現程序的自動化測試;
4.部分實現程序的壓力測試;
5.執行系統級別的通用問題追蹤調試;
6.使你對程序的內部運行過程更加了解。
instrument是多個模板的集成,下面就是最新版instrument的全部模板的一個截圖。
instrument模板雖多,但我覺得常用的就那幾個:
Blank(空模板):創建一個空的模板,可以從Library庫中添加其他模板;
Activity Monitor(活動監視器):顯示器處理的CPU、內存和網絡使用情況統計;
Allocations(內存分配):跟蹤過程的匿名虛擬內存和堆的對象提供類名和可選保留/釋放歷史;
Automation(自動化):這個模板執行它模擬用戶界面交互為IOS機應用從instrument啟動的腳本;
Leaks(泄漏):一般的措施內存使用情況,檢查泄漏的內存,并提供了所有活動的分配和泄漏模塊的類對象分配統計信息以及內存地址歷史記錄;
Time Profiler(時間探查):執行對系統的CPU上運行的進程低負載時間為基礎采樣。
我對instrument的了解!
一周的時間讓我從剛開始的一片迷茫的狀態,變成現在的撥開雨霧,正式接觸這個世界。在這我想說一句,instrument其實沒有想象中的那么困難,它的困難之處就在于它的模板太多了,如果只是單單掌握其中幾個模板,一、兩周就能熟練的掌握,但你偏要說完全掌握它,那么你就要花費稍微長的一段時間。還有一個對于一些人來說不是問題的問題,那就是instrument是純英文的軟件,對于我這個英文戰斗力只有5的渣渣來說,我很長時間都浪費在這上面去了。
好像扯的有點多了,說說一些實際的吧,
運行xcode,在xcode菜單欄中選擇Profuct>Profile,或者"command+i"鍵,進入instrument模板選擇頁面
在instrument模板界面選擇“Blank”模板,進入blank 空模板頁面
選擇要運行的ios設備以及ios系統版本,我這選擇iPhone5s 8.1版本
選擇設備之后,我就要選擇要測試的app
在要運行的app和ios設備選擇好之后,就要選擇要運行的模板工具,點擊右上角的“+”,彈出Library庫,選擇模板工具
當上述都已準備好,那么就可以運行iinstrument了,點擊左上角的紅色圓形按鈕,運行instrument
紅色圓形按鈕之后,ios模擬器會直接運行選擇好的app
運行并操作app一段時間后,點擊左上角的暫停按鈕,看看在這段時間內,運行的數據
拿“Timer Profiler”來說,點擊左下角的運行結果,直接進入相關的代碼
簡單的就介紹這一些,上面的截圖步驟不是我不想更仔細的說明,而是我對于它的研究程度還沒有到那種透徹的地步。最后申明一下,本文只是表達自己對于instrument的見解,如有什么不對的地方,歡迎大家多多指點。