Как настроить тестовый пакет OCUnit для фреймворка? - PullRequest
4 голосов
/ 23 февраля 2010

Я занимаюсь разработкой платформы Mac OS X и хочу использовать OCUnit в своем проекте XCode 3.2.1. Я следовал нескольким учебникам о том, как настроить тестовый комплект OCUnit. Проблема заключается в том, что когда я создаю тестовый пример, в котором используется функция, определенная в одном из исходных текстов фреймворка, я получаю сообщение об ошибке, сообщающее, что символ не найден.

Я сделал тестовый пакет зависимым от цели моего проекта, как сказано в учебнике, но это не проблема. Сначала я подумал, что смогу решить эту проблему, перетащив исходные файлы платформы в раздел исходных текстов компиляции в целевом объекте Тестовый пакет, но затем все символы, на которые есть ссылки из этого исходного файла, начали появляться в ошибках сборки, так что, похоже, нет быть хорошим решением / идеей.

Как я могу сконфигурировать свой комплект модульных тестов, чтобы он правильно собирался?

Ответы [ 2 ]

4 голосов
/ 24 февраля 2010

Я также пишу юнит-тесты против фреймворка, надеюсь, я смогу помочь. Вы не хотите перекомпилировать исходные коды фреймворка для модульного тестирования - вместо этого вы хотите связать их со встроенным фреймворком. Вот что я предлагаю:

  1. Откройте информационное окно для цели модульного тестирования, дважды щелкнув по цели на боковой панели.
  2. На вкладке «Общие» щелкните значок + в левом нижнем углу, чтобы добавить связанную библиотеку. Выберите структуру, которую генерирует ваш проект, и нажмите «Добавить». Закройте информационное окно.
  3. В каждом из ваших юнит-тестов импортируйте заголовочные файлы, которые вам нужны для этого теста. Поскольку XCode знает о файлах фреймворка, вы должны иметь возможность использовать форму #import "MyHeader.h", а не угловые скобки (< и >).

На этом этапе ваши юнит-тесты должны собираться без ошибок. Если нет, то может помочь проверка того, как мои модульные тесты настроены для CHDataStructures .

1 голос
/ 24 февраля 2010

Я мог бы заставить его работать, нажав на флажок, соответствующий моей структуре (тот, который появляется в разделе продукта) в таблице средства просмотра файлов, которая появляется в главных окнах XCode (я предполагаю, что это помещает файл как цель о, что-то подобное). Кажется, что перетаскивание фреймворка в комплект модульного теста делает совсем другое.

...