XCTests не работает с сообщением: *** Canceling tests due to timeout in Waiting for test process to check in...
Это только начало появляться за последние несколько дней. Я использую Xcode 7.3.1, а iOS 9.3.2 работает на iPhone 6. Мое приложение написано в основном в Swift.
Я видел несколько похожих сообщений:
- Невозможно запустить XCTests на устройстве iOS
- Тесты iOS не будут работать на симуляторе при использовании Jenkins через JNLP
Другие сообщения говорят об этой проблеме, возникающей при подписании кода. Подписание кода не похоже на мою проблему. Я просмотрел утилиту KeyChain Access и не вижу соответствующих сертификатов с истекшим сроком действия. Кроме того, что до сих пор (очень временно) исправление моей проблемы заключается в перезагрузке моего iPhone. (К сожалению, это исправление не длится долго - может быть, несколько прогонов XCtests и проблема снова возникает). Я не запускаю Jenkins, просто XCTests.
Я попытался перезапустить Xcode и удалить все файлы/папки из папки DerivedData, но ни одна из этих проблем не устраняет проблему.
Я просто установил Xcode8 (первая бета-версия). Но, не запустив его один или два раза, я обычно не использую его. Кажется странным совпадением, что эта проблема возникает после того, как она только что установила это.
Обновление 6/25/16
Я немного сузил этот вопрос. Несколько других симптомов появляются одновременно с проблемой тайм-аута:
- Консольное ведение журнала непосредственно из операторов
print
в файлах XCTest останавливается. - Таймер сбой - на самом деле это корень проблемы. Мои тесты связаны с первым ожиданием взаимодействия с сервером. Но ожидание использует NSTimer, который никогда не выполняет обратный вызов.
- Точки останова перестают работать.
Кажется целесообразным отметить, что я запускаю этот XCTest вручную. То есть, я запускаю каждый тест отдельно, поэтому каждый тест включает сборку.
Кроме того, до сих пор я тестировал следующее:
- Перезапуск Xcode (не помогает)
- Перезапуск Mac OS X (не помогает)
- Удаление данных Derived Data (не помогает)
- Перезапуск iPhone - помогает, но только снова позволяет запускать несколько тестов Xcode.
- Пробовал работать с Wi-Fi против точки доступа на iPhone (без изменений)
- TODO: работа с симулятором
- Это может быть проблема с кабелем или USB-портом? Изменение кабеля, соединяющего устройство, не помогает.
- Удаление приложения и переустановка/перестройка не помогают.
- Пробовал на другом оборудовании (iPad Air работает под управлением iOS 9.3.2). Те же проблемы.
Моя конфигурация: iOS 9.3.2, Xcode 7.3.1, Mac OS X 10.11.5 (15F34).