@testable import moduleName не импортирует все - PullRequest
0 голосов
/ 27 июня 2018

У меня есть проект, в котором смешаны Obj-C и Swift, и у меня возникают некоторые проблемы с работой моих модульных тестов.

Я использую директиву @testable import moduleName для импорта моих файлов, однако, похоже, что она не импортирует все файлы. У меня есть полный доступ почти ко всем моим моделям Obj-C, классам менеджера и т. Д., Но ни один из контроллеров представления (95% из которых находятся в Obj-C) не доступен из XCTestCase вместе со всеми моими Свифт файлы.

Я импортировал @testable import ModuleName в верхней части XCTestCase, Я также отредактировал цель, чтобы включить тестируемость, но, похоже, единственный способ получить доступ к этим файлам - это установить целевое членство для файлов вручную, что, если я все правильно понял, мне не нужно делать.

Есть предложения?

1 Ответ

0 голосов
/ 28 июля 2018

Да, я просто ушел от той же проблемы с модульным тестированием, когда проект имел оба языка: Objective-C & Swift . Так что в основном я нашел Вы должны добавить соответствующий файл и все необходимые файлы для цели тестирования. А также требуется добавить их в Bridging_Header для доступа к этим файлам. Более того, причина использования @testable это для проверки методов внутренних .... методов.

@testable import moduleName

Это используется для наглядности методов, т. Е. Внутренние методы теперь могут быть видны в unitTest, но все приватные методы не будут.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...