ios xcode xctest xcode7 dyld

ios - Xcode 7.0 XCTest dyld: no se pudo cargar la biblioteca insertada IDEBundleInjection



xcode7 (9)

Estoy ejecutando pruebas unitarias en mi proyecto de iOS y cuando se está ejecutando, se bloquea y lo escupe:

dyld: could not load inserted library ''/private/var/mobile/Containers/Data/Application/1CAB64C8-D730-427B-8E9E-BD5E152ACFD6/tmp/IDEBundleInjection.framework/IDEBundleInjection'' because no suitable image found. Did find: /private/var/mobile/Containers/Data/Application/1CAB64C8-D730-427B-8E9E-BD5E152ACFD6/tmp/IDEBundleInjection.framework/IDEBundleInjection: mmap() error 1 at address=0x00436000, size=0x00004000 segment=__TEXT in Segment::map() mapping /private/var/mobile/Containers/Data/Application/1CAB64C8-D730-427B-8E9E-BD5E152ACFD6/tmp/IDEBundleInjection.framework/IDEBundleInjection

Estoy usando XCode 7.0 y probando en un iPod con iOS 8.3. He eliminado los datos derivados y he reiniciado XCode y todavía no ha funcionado.


Arreglé esto seleccionando el objetivo correcto y luego seleccionando la Identidad de firma de código correcta desde Configuración. Se estableció en un valor no predeterminado, se cambió a ''Desarrollador IOS'' para la entrada de configuración de depuración.


Arreglé esto simplemente creando un nuevo objetivo UnitTest, copiando todo y eliminando el anterior.


En el Panel General, no deje el Equipo a "Ninguno".

Al mismo tiempo: seleccione el signo de código en Configuración de compilación-> Firma de código-> Identidad de firma de código


En mi caso, no había nada malo con los perfiles de aprovisionamiento, se trataba de las Arquitecturas en el proyecto, excluyendo arm64. Una vez que se agregó arm64 al objetivo de la prueba y al objetivo de la aplicación del host, las pruebas funcionaron bien (en Xcode 7.2). El error fue:

dyld: could not load inserted library ''/private/var/mobile/Containers/Data/Application/A94F5AD3-2A5F-415D-B127-0F45DEC7A659/tmp/IDEBundleInjection.framework/IDEBundleInjection'' because no suitable image found. Did find: /private/var/mobile/Containers/Data/Application/A94F5AD3-2A5F-415D-B127-0F45DEC7A659/tmp/IDEBundleInjection.framework/IDEBundleInjection: mmap() error 22 at address=0x00501000, size=0x00005960 segment=__LINKEDIT in Segment::map() mapping /private/var/mobile/Containers/Data/Application/A94F5AD3-2A5F-415D-B127-0F45DEC7A659/tmp/IDEBundleInjection.framework/IDEBundleInjection


Logré arreglar esto al especificar mi certificado de desarrollador en la build settings->code signing identity .


Necesitaba configurar el equipo en Proyecto-> Aplicación objetivo-> General. Se estableció en "Ninguno", en lugar de un equipo válido.


Solucioné este problema reiniciando mi dispositivo iOS.


Tuve este mismo problema y tuve que reiniciar mi dispositivo. Estaba usando iOS 10 con Xcode 8.0 (desarrollo en swift 3.0)


Tuve mi SDK base en XCode Build Settings configurado para una versión más reciente de iOS que la del teléfono, así que tuve que actualizar el sistema operativo del teléfono.