XCTest-7-代碼覆蓋

代碼覆蓋是Xcode 7中的一個功能蝗锥,它使您可以可視化和測量您的代碼是由測試執(zhí)行冒晰。使用代碼覆蓋痛侍,您可以確定您的測試是否正在完成您的預期工作。

啟用代碼覆蓋

Xcode中的代碼覆蓋是LLVM支持的測試選項径荔。當啟用代碼覆蓋時,LLVM將基于調用方法和函數(shù)的頻率來收集覆蓋數(shù)據(jù)的代碼寿羞。代碼覆蓋選項可以收集數(shù)據(jù)以報告正確性和性能的測試猖凛,無論是單元測試還是UI測試。

您可以通過編輯方案的測試操作來啟用代碼覆蓋绪穆。

1.從方案編輯器菜單中選擇編輯方案辨泳。

從方案編輯菜單中選擇編輯方案

2.選擇測試操作。

3.啟用代碼覆蓋復選框以收集覆蓋數(shù)據(jù)玖院。

啟用代碼覆蓋復選框

4.點擊Close菠红。

注意: 代碼覆蓋率數(shù)據(jù)收集會導致性能損失。無論懲罰是否重要难菌,它都應該以線性方式影響代碼的執(zhí)行试溯,因此,當啟用時郊酒,性能結果在測試運行和測試運行之間保持可比性遇绞。但是,當您嚴格評估測試中例程的性能時燎窘,應考慮是否啟用代碼覆蓋摹闽。

代碼覆蓋如何適應測試

代碼覆蓋率是測量測試值的工具。它回答問題

1.運行測試時褐健,實際運行的代碼是什么付鹿?‘

2.多少測試足夠的測試?
換句話說蚜迅,你架構了足夠的測試舵匾,以確保所有的代碼正在檢查正確性和性能?

3.你的代碼的哪些部分沒有被測試谁不?

測試運行完成后坐梯,Xcode接收LLVM覆蓋率數(shù)據(jù),并使用它在Reports導航器中創(chuàng)建覆蓋率報告拍谐,如Coverage窗格中所示烛缔。它顯示有關測試運行的摘要信息,文件中源文件和函數(shù)的列表以及每個文件的覆蓋百分比轩拨。

可以看到各個文件的測試百分比

源編輯器顯示文件中每行代碼的計數(shù)践瓷,并突出顯示未執(zhí)行的代碼。它突出顯示需要覆蓋的代碼區(qū)域亡蓉,而不是已經(jīng)覆蓋的區(qū)域晕翠。

例如,將指針懸停在-[Calculator input:]上面的coverage報告中的方法上,會顯示一個按鈕淋肾,將您帶到注釋的源代碼硫麻。

點擊這個按鈕可以看到注釋的源代碼

覆蓋注釋在右邊繪制,并顯示在測試期間命中代碼的特定部分的次數(shù)的計數(shù)樊卓。例如:

右邊的3m,1m,1m這些都是覆蓋注釋

根據(jù)input:上述計數(shù)拿愧,該方法在測試中頻繁調用。但是碌尔,有一些方法的部分沒有調用浇辜。這在源代碼編輯器中清楚地標記,如下所示:

沒有調用的方法

此報告數(shù)據(jù)和顯示建議有機會寫入包含意外或無效字符的測試唾戚,以確保錯誤處理以你預期的方式工作柳洋。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市叹坦,隨后出現(xiàn)的幾起案子熊镣,更是在濱河造成了極大的恐慌,老刑警劉巖募书,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绪囱,死亡現(xiàn)場離奇詭異,居然都是意外死亡莹捡,警方通過查閱死者的電腦和手機毕箍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來道盏,“玉大人,你說我怎么就攤上這事文捶『沙眩” “怎么了?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵粹排,是天一觀的道長种远。 經(jīng)常有香客問我,道長顽耳,這世上最難降的妖魔是什么坠敷? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮射富,結果婚禮上膝迎,老公的妹妹穿的比我還像新娘。我一直安慰自己胰耗,他們只是感情好限次,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般卖漫。 火紅的嫁衣襯著肌膚如雪费尽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天羊始,我揣著相機與錄音旱幼,去河邊找鬼。 笑死突委,一個胖子當著我的面吹牛柏卤,可吹牛的內容都是我干的。 我是一名探鬼主播鸯两,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼闷旧,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了钧唐?” 一聲冷哼從身側響起忙灼,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钝侠,沒想到半個月后该园,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡帅韧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年里初,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片忽舟。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡双妨,死狀恐怖,靈堂內的尸體忽然破棺而出叮阅,到底是詐尸還是另有隱情刁品,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布浩姥,位于F島的核電站挑随,受9級特大地震影響,放射性物質發(fā)生泄漏勒叠。R本人自食惡果不足惜兜挨,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望眯分。 院中可真熱鬧拌汇,春花似錦、人聲如沸颗搂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽先改。三九已至,卻和暖如春仇奶,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背比驻。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工该溯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人别惦。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像掸掸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子扰付,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內容