用 GHUnit 運行 ASIHttpRequest 的測試案例
下載ASIHttpResquest后,打開iPhone工程,你會發現在Tests組下有許多.m/.h文件,這是作者用GHUnit框架編寫的 測試案例。而且工程中也建立了一個target,名為Tests,顯然是為了編譯運行測試案例而配置的。但你卻無法編譯這個target,因為 GHUnitIOS.framework不存在。要想運行這些測試案例,我們還必須做一些額外的工作(以Xcode3.23為例)。
首先,下載GHUnit。該項目主頁是:
https://github.com/gabriel/gh-unit#readme
下載,解壓后得到GHUnitIOS.framework。把它復制到ASIHttpRequest的External/GHUnit目錄下。
確認在Tests的linked Binary Libraries下有以下內容:
GHUnitIOS.framework
CoreGraphics.framework
Foundation.framework
UIKit.framework
確認Tests的Build設置中,Framework Search Paths設置為GHUnitIOS.framework目錄。
確認Tests的Build設置中,Other Linker Flag設置中包含-ObjC和-all_load。
把Tests-info.plist中的Main nib file base name一行刪除。
確認項目中已加入GHUnitIOSTestMain.m文件,并已包含在Tests中。該文件下載地址:
http://github.com/gabriel/gh-unit/blob/master/Project-iOS/GHUnitIOSTestMain.m
確認所編寫的測試案例中已包含:
選擇Targets下的Tests,右鍵->Build “Tests”。在左上角的Build Configure中選擇Active Target為Tests,然后點“Buildand Run”,程序運行效果如下:
2011-09-15 11:40:16.236 Tests[996:207]ClientCertificateTests/testClientCertificate ? 3.09s
右側的勾號表明該測試通過,并列出測試所用時間。