Я работаю над оценкой логических тестов с использованием Xcode 8 Beta 6 для статической библиотеки Objective-C Cocoa Touch. Цель развертывания - iOS 8.0, и все отлично работает с Xcode 7.3.1. Xcode 8, однако, говорит мне, что xctest
не может быть запущен. Он сообщает об ошибке:Выполнение логических тестов на iOS 8/9 с ошибками Xcode 8 для библиотек и фреймворков
iPhone 6 cannot run xctest.
iPhone 6 runs iOS 8.4, which is lower than xctest’s minimum deployment target. Change your project’s minimum deployment target or upgrade iPhone 6’s version of iOS.
В случае, если описание неясна, вот скриншот того, что происходит, когда я использую ⌘U для запуска тестов:
Единственный способ, которым я могу получить тесты для запуска - использовать симулятор iOS 10. Это происходит в виртуальной машине El Capitan 10.11.6, где у меня установлен только Xcode 8 Beta 6. Симуляторы были установлены с использованием Xcode 8 Beta 5; Я обновился до Xcode 8 Beta 6, когда он был выпущен.
Я попытался создать новый проект Cocoa Touch с нуля с целью его развертывания, установленной на iOS 8.0. Результат попыток запуска логических тестов такой же, как и в моем проекте статической библиотеки. Если я создаю новое однооконное приложение и задаю его цель развертывания для iOS 8.0, то нет проблем с выполнением логических тестов.
Пример рамки, которые я создал доступна здесь:
https://dl.dropboxusercontent.com/u/2940479/MyFramework.zip
Чтобы воспроизвести проблему, откройте рамки в Xcode 8 и установить конфигурацию на что-то другое, чем на IOS 10 тренажере версии.
Есть ли что-то, что можно изменить в проекте Xcode, чтобы логические тесты выполнялись с версиями симулятора старше IOS 10?
Это, как представляется, исправлено в Xcode 8.1 – trilorez