Xcode 9 - Не удалось подключиться к pid для модульных тестов Frameworks

Я получаю следующую ошибку после перехода от одного mac к другому с использованием машины времени.

Не удалось подключить pid

Убедитесь, что "название проекта" еще не запущено, а "имя пользователя системы" имеет разрешение на его отладку.

Ошибка возникает только при выполнении модульных тестов для (любого) проекта Framework. Запуск приложения на симуляторе и устройстве отлично работает.

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

Я протестировал решения, предложенные по аналогичным вопросам в Stackoverflow (я удалил производные данные, очистил все, переустановил Xcode, перезапустил mac..) до сих пор не удалось решить проблему.

Я использую Xcode 9.3 и тестировал это с помощью Xcode 9.4-beta.

Я бегу на Mac OS High Sierra - 10.13.4 (17E199)

Любая помощь/предложение приветствуются!

Ответ 1

Открыв отчет об ошибке Apple, они предложили мне:

  • Проверьте, является ли мой пользователь пользователем Admin. Это было так.
  • Проверьте, есть ли группа "_developer" в команде команды groups. это было так. Используйте эту команду: группа dscacheutil -q group
  • Проверьте права режима разработчика, используя команду sudo/usr/sbin/DevToolsSecurity -status. Статус мне неизвестен.
  • Включите права режима разработчика, если необходимо, используя команду sudo/usr/sbin/DevToolsSecurity -enable. Это решило наконец мою проблему!

Ответ 2

Я смог решить эту проблему:

  1. добавление цели Single View App (я назвал его HostApp)
  2. установка HostApp объекта HostApp в качестве хост-приложения для целевой цели

Setting HostApp as a host application

Ответ 3

Если у вас есть Mojave OS, тогда:

1) Откройте целевую схему

enter image description here

2) Снимите этот флажок

enter image description here

3) Выберите эту схему во время тестирования этой цели (например, Testing TestApiTarget) - выберите "TestApiTarget" в схемах тестов).

Его временное решение из отчета об ошибке

Ответ 4

Вы можете попробовать следующие шаги:

  1. Откройте keyChain и проверьте Keychain certificates и удалите существующие, срок действия которых истек.
    1. Снимите флажок - automatically manage sign in из настроек проекта Xcode.
    2. Удаление любых полученных данных
    3. Очистите проект с помощью cmd+k
    4. Затем закройте и Restart проект и запустите...

Надеюсь, это сработает.

Ответ 5

Вы можете сделать следующее:

  1. Убейте ваш симулятор, а затем запустите его снова из Xcode.

  2. Если вы пытаетесь построить слишком быстро после начала сборки. Попробуйте снова и снова запустить проект.

  3. Это может быть проблемой с ненадежными сертификатами в доступе к цепочке ключей, пожалуйста, удалите такой тип сертификатов и снова заново постройте.

Наконец, вы можете сделать, это перепроверять сертификаты Keychain. Удалите оставшиеся, щелкнув правой кнопкой мыши (они пропустили истечение срока действия) и Targets->General "automatically manage signing" в Targets->General

Надежда выше шагов решит вашу проблему.

Ответ 6

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

Вы можете найти местоположение вашей производной папки данных в Xcode.
Откройте настройки/местоположения и щелкните стрелку.
После получения данных вы можете удалить все папки. FYI после удаления папки с производными данными все ваши проекты необходимо будет перестроить.

Надеюсь это поможет!

Xcode preferences/locations