Я пытался добиться, чтобы покрытие кода работало для симулятора iPhone, и всегда получаю покрытие 0%. Ниже приведены детали конфигурации и шаги, которые я пробовал.
Конфигурация
Xcode 3.2.5 / iOS 4.1 и iOS 4.2 / Mac 10.6 / GCC 4.2
Я пытался заставить покрытие кода работать для симулятора iPhone и всегда получал 0% покрытия. Ниже приведены детали конфигурации и шаги, которые я пробовал.
Конфигурация
Xcode 3.2.5 / iOS 4.1 и iOS 4.2 / Mac 10.6 / GCC 4.2
Я пытался заставить покрытие кода работать для симулятора iPhone и всегда получал 0% покрытия. Ниже приведены детали конфигурации и шаги, которые я пробовал.
Конфигурация
Xcode 3.2.5 / iOS 4.1 и iOS 4.2 / Mac 10.6 / GCC 4.2 заявка UICatalog
Ссылки
http://www.cubiclemuses.com/cm/articles/2009/05/14/coverstory-on-the-iphone/
http://developer.apple.com/library /mac/#qa/qa2007/qa1514.html[1217 visibleSteps
-lgcov
» в « Другие флаги компоновщика » Флаг UIApplicationExitsOnSuspend
в Info.plist имеет значение true Результат
У меня есть сгенерированные файлы .gcda, но покрытие всегда показывает 0%.
Попытка настроек
Изменение GCC на 4.0 и 4.2. Когда я пытаюсь изменить GCC на 4.0, я получаю 26 ошибок сборки.
Установите переменные среды
(const char * prefix = "GCOV_PREFIX";
const char * prefixValue = [[NSHomeDirectory () stringByAppendingPathComponent: @ "Documents"] cStringUsingEncoding: NSASCIIStringEncoding]; // Это получает путь к файлу в каталоге документов приложения
const char * prefixStrip = "GCOV_PREFIX_STRIP";
const char * prefixStripValue = "1";
setenv (префикс, prefixValue, 1); // Устанавливает переменную среды, которая сообщает gcov, где разместить файлы .gcda.
setenv (prefixStrip, prefixStripValue, 1); // Это указывает gcov удалить префикс по умолчанию и использовать только что объявленный путь к файлу.)
Для оптимизации GCC задано значение Нет (-O0) и снят флажок прекомпилированного файла заголовка префикса.