Xcode自帶iOS測試方法


在說Xcode自帶測試方法前先講下程序在內存中的空間划分, 一般可分為5個部分:

#1. BSS段, 存放未初始化的全局變量. BSS是英文Block Started by Symbol的簡稱。BSS段屬於靜態內存分配。

#2. 數據段, 存放已初始化的全局變量和全局靜態變量. 數據段屬於靜態內存分配

#3. 代碼段, 存放程序執行代碼

#4. 堆      , 存放進程中被動態分配的內存段.

#5. 棧      , 存放函數的參數值和局部變量, 由編譯器自動分配和釋放.

 

常說的內存管理是對堆內存的管理.

內存泄露指動態分配開辟出來的空間, 在使用完畢后未釋放, 或者未被回收直至程序結束.

 

Xcode自帶有一套測試工具

 

Analyze - 靜態分析

如下圖位置:

會自動檢查代碼中是否有以下錯誤:

#1. 是否創建了一個對象, 但並沒有使用它

#2. 是否創建了一個對象或者指針, 對其初始化后卻一直沒有讀取過

#3. 是否調用的讓某個對象引用計數加1的方法, 卻沒有調用引用計數減1的方法

#4. 是否有錯誤返回類型.

運行后如果檢查到有上述錯誤, 會有藍色的提示, 如圖

 

下面再就是常用的Instruments, 使用前注意要把xocde運行模式改為release

打開Instruments是選擇上面第一張圖中的Profile, 包含以下測試功能:

我們介紹下常用的Instruments三傑:

 

Leaks - 內存泄露檢查

這樣一般如果有做過靜態檢查Analyze就比較少會出問題, 運行的截圖:

打開后手機運行可能會慢一些, 要盡量打開程序中的所有界面檢查下. 如果有內存泄露的話會在Leak check那一行出現x的符號

點擊x符號能看到詳細錯誤信息

 

Allocations - 內存分配檢查

界面如下圖

 

Time Profile - 運行耗時檢查

能查看各個耗時的項目, 對於耗時較多的項目可以雙擊耗時項目直接定位到代碼

 

 

點開可能定位到代碼, 下圖中顯示的301x標識這段代碼運行耗時301ms, 如果有較耗時的代碼就需要進行優化

 

上面是Xcode自帶的一些檢查工具, 但最重要的還是要自己多注意代碼規范 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM