我有幾個單元測試項目,我想測量覆蓋率。所以我遵循How-to for CoverStory和網絡上其他地方的詳細說明。如何在Xcode 4中獲得測試代碼覆蓋率併爲iPhone構建?
我將-fprofile-arcs
和-ftest-coverage
添加到我的測試目標和測試目標中,並按照指定鏈接到/Developer/usr/lib/libprofile_rt.dylib
。
它的工作原理!當我在iPhone模擬器下運行測試方案時,我得到了我的代碼覆蓋率,測試和應用程序的構建和運行。
但是,當我回到實際的iPhone硬件的運行方案時,我得到了libprofile_rt.dylib的鏈接錯誤。具體來說,我得到
LD:找不到-lprofile_rt
庫我懷疑這裏是libprofile_rt實際上是爲Mac硬件和iPhone庫顯然不能鏈接到內置的二進制對於Mac來說,一般來說。
我的問題是如何運行iPhone的硬件和得到我的代碼覆蓋?
我懷疑我可以用我的調試目標的副本來做到這一點,這個副本只用於測試,但是還有另外一個維護另一個目標的麻煩。有沒有其他方法可以使這個工作?我在做一些愚蠢的事情嗎?
這個庫的iOS版本在/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/libprofile_rt.dylib也許你應該嘗試鏈接新的目標與這一個 –
好找,但那給了我不同的錯誤:我收到一條警告:「忽略文件/Developer/.../libprofile_rt.dylib,在文件中缺少必需的架構armv7」。因爲鏈接器忽略該文件,所以我得到未定義的符號錯誤。於是我去了我的目標和硬編碼armv7的構建設置中的體系結構,並獲得相同的結果。 – ageektrapped