Причина: изображение не найдено при запуске тестов пользовательского интерфейса с помощью модуля разработки

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

MY_APP_TARGETUITests-Runner [55293: 20696349] Не удалось загрузить пакет MY_APP_TARGETUITests, поскольку он поврежден или отсутствуют необходимые ресурсы. Попробуйте переустановить комплект.

MY_APP_TARGETUITests-Runner [55293: 20696349] (dlopen_preflight (/ Users / @@@@ / Library / Developer / Xcode / DerivedData / MY_APP_TARGET-gbamhqqrrbznxidxekwloacioddy / сборки / Продукты / Debug-iphonesimulator / MY_APP_TARGETUITests-Runner.app / Plugins / MY_APP_TARGETUITests.xctest / MY_APP_TARGETUITests): библиотека не загружена: @ rpath / libswiftAVFoundation.dylib

Ссылка на: /Users/@@@@/Library/Developer/Xcode/DerivedData/MY_APP_TARGET-gbamhqqrrbznxidxekwloacioddy/Build/Products/Debug-iphonesimulator/MY_APP_TARGETNODYSIMULATOR/MY_APP_TARGETUnSimulator/MY_APP_TARGETUnSimulator/MY_APP_TARGETUnSimulator/MY_APP_TARGETUnSmulator/

Причина: изображение не найдено)

Первая проблема связана с Library not loaded: @rpath/libswiftAVFoundation.dylib, поэтому я рассмотрел эту проблему со следующим:

dyld: библиотека не загружена: @ rpath / libswiftAVFoundation.dylib

Я выполнил следующие действия, чтобы попытаться решить эту проблему:

  • Удален и повторно установлен уязвимый модуль.
  • Очистить и восстановить
  • Перезагрузите XCode и машину
  • Удалить производные данные
  • Добавлен s.framework = 'AVFoundation' в файл podspec для моего локального модуля
  • Установите для параметра Always Embed Swift Standard Libraries значение по умолчанию (теперь мои модули устанавливаются без предупреждений или ошибок)

Успешная установка модуля

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

Что касается второго, я также проверил здесь:

​​XCode10 - UITests - Причина: изображение не найдено

Мой Podfile настроен так:

use_frameworks!
inhibit_all_warnings!
platform :ios, '10.3'

def default_pods
    pod 'RemotePod', '~> 1.0'
    pod 'MyLocalPod', :path => 'path/to/MyLocalPod'
end

target 'MY_APP_TARGET' do
    default_pods
end

target 'MY_APP_TARGETTests' do
    inherit! :search_paths

    default_pods
end

target 'MY_APP_TARGETUITests' do
    inherit! :search_paths

    default_pods
end

Я тестировал установку модуля прямо в цель, но это не изменило ситуацию.

Все задействовано на 100% Swift, поэтому проблем с микшированием Objective-C возникнуть не должно.


person Community    schedule 28.12.2018    source источник
comment
См. stackoverflow.com/questions/34990175/ для получения дополнительных идей   -  person Paul Beusterien    schedule 29.12.2018
comment
@PaulBeusterien Спасибо, я пробовал их, но не смог найти тот, который работал. Однако я решил это с помощью другого исправления.   -  person    schedule 04.01.2019


Ответы (2)


Эта проблема часто встречается в тех случаях, когда одна из ваших платформ использует другую в качестве зависимости. Вам следует добавить все зависимости в целевое приложение напрямую, а не в платформу.

person singhabhi13    schedule 04.06.2019

Перенастройка симулятора и устройства исправила это для меня.

Ни один из шагов по ссылке, предоставленной Полом, не помог решить эту проблему.

person Community    schedule 03.01.2019