專項(xiàng)測(cè)試
在功能測(cè)試之后揩慕,需要來說說專項(xiàng)測(cè)試了游两。專項(xiàng)測(cè)試是很多測(cè)試類型的統(tǒng)稱。在專項(xiàng)測(cè)試中漩绵,主要需要做性能測(cè)試贱案、穩(wěn)定性測(cè)試、兼容性測(cè)試止吐、電量測(cè)試和網(wǎng)絡(luò)測(cè)試宝踪。本文不會(huì)將這些測(cè)試類型的具體做法都進(jìn)行介紹。針對(duì) iOS 的特點(diǎn)碍扔,主要介紹性能測(cè)試中的內(nèi)存測(cè)試瘩燥、電量測(cè)試和網(wǎng)絡(luò)測(cè)試方案。
內(nèi)存測(cè)試不同。內(nèi)存測(cè)試在 iOS 系統(tǒng)中特別重要厉膀。首先,iOS 系統(tǒng)會(huì)對(duì)應(yīng)用有內(nèi)存數(shù)限制二拐,超過一定數(shù)量程序會(huì)被強(qiáng)行關(guān)閉服鹅。另外,不斷少量的內(nèi)存泄露會(huì)使程序卡頓百新,極大地影響了用戶體驗(yàn)企软。內(nèi)存測(cè)試需要有內(nèi)存測(cè)試工具,主要使用 Xcode 和 Instruments 這兩個(gè) Apple 提供的工具饭望。在檢測(cè)內(nèi)存時(shí)仗哨,首先推薦 Xcode 的代碼分析功能。選擇圖 3 中的 Analyze铅辞,Xcode 會(huì)對(duì)項(xiàng)目代碼進(jìn)行內(nèi)存分析厌漂,如果發(fā)現(xiàn)有循環(huán)引用等問題時(shí),Xcode 會(huì)給出提示斟珊,以及詳細(xì)的引用關(guān)系苇倡,如圖 4 所示。
圖 3. 選擇 analyze 分析
圖 4. analyze 結(jié)果
圖 5. Instruments 分析結(jié)果
圖 6. call tree 分析
選擇 Call Tree 后,勾選左側(cè)的 Invert Call Tree岛杀、Hide System Libraries 選項(xiàng)阔拳,此時(shí)可以看到右側(cè)顯示程序中存在內(nèi)存泄露的方法,單擊左側(cè)箭頭可以展開內(nèi)存泄露下程序的調(diào)用樹类嗤,如圖 7 所示糊肠。在這里你可以詳細(xì)地看到代碼的調(diào)用過程,很清楚地定位到有問題的代碼位置遗锣。
圖 7. 泄露定位圖
電量測(cè)試。電量測(cè)試在專項(xiàng)測(cè)試的優(yōu)先級(jí)中扶叉,并沒有穩(wěn)定性和兼容性測(cè)試高勿锅。但是穩(wěn)定性和兼容性方面業(yè)內(nèi)已經(jīng)比較成熟了,在各種技術(shù)分享和一些技術(shù)文章中也有大量的實(shí)踐討論枣氧。所以溢十,本文不再針對(duì)穩(wěn)定性和兼容性測(cè)試進(jìn)行描述,直接開始電量測(cè)試相關(guān)的測(cè)試總結(jié)达吞。iOS 的耗電量都是一些硬件設(shè)備造成的张弛,當(dāng)然硬件的很多不合理和不必要的使用都是通過軟件程序來控制的。所以 Instruments 工具的電量分析會(huì)幫助你掃描在 iOS 應(yīng)用使用過程中各種耗電的硬件是打開還是關(guān)閉狀態(tài)酪劫。比如吞鸭,需要格外關(guān)心 GPS 的使用、Wi-Fi 和手機(jī)網(wǎng)絡(luò)的使用頻度等覆糟。如圖 8 所示刻剥。此時(shí)的電量分析只能通過一些硬件的使用開發(fā)來定性地進(jìn)行分析。
圖 8. 電量分析
電量測(cè)試的過程中為了減小誤差保證測(cè)試數(shù)據(jù)的準(zhǔn)確,需要注意以下幾點(diǎn):
Case 要有重點(diǎn)处坪;
Case 要盡量的懈省;
Case 最好是可持續(xù)時(shí)間長(zhǎng)的同窘,比如導(dǎo)航計(jì)算玄帕,視頻播放和音頻播放;
Case 如果不可持續(xù)想邦,需要重復(fù)多次裤纹,取平均值。
轉(zhuǎn)載:
http://www.ibm.com/developerworks/cn/mobile/mo-cn-ios-testing/index.html
http://my.oschina.net/bluedreamjn/blog/536049
https://viktyz.gitbooks.io/iosnotebook/content/Notes/Note_00020_20151221.html