El package de testing KIF XCTest.dylib no se carga al usar Swift

Estoy intentando agregar nuevas testings en Swift a un package de testing KIF existente actualmente escrito en el Objetivo C.

Preparar:

  • Xcode 6.4
  • cocoapods 0.37.2
  • Podfile usa la última versión de KIF

He configurado el encabezado puente Swift, importando KIF y otras partes relevantes de mi proyecto para que estén disponibles para Swift.

He networkingucido las cosas a un simple caso de testing, que ni siquiera usa KIF en esta etapa:

import Foundation class MyFirstTest : KIFTestCase { func testOne() { NSLog("Done") } } 

El package de testing funciona bien, pero cuando ejecuto obtengo:

2015-07-03 14: 52: 32.620 MyApp [1104: 204793] Error al cargar /private/var/mobile/Containers/Data/Application/F20A664E-BD2D-4299-A93F-4C6758CBAF34/tmp/MyApp_UI_Tests.xctest/MyApp_UI_Tests: dlopen (/private/var/mobile/Containers/Data/Application/F20A664E-BD2D-4299-A93F-4C6758CBAF34/tmp/MyApp_UI_Tests.xctest/MyApp_UI_Tests, 262): La biblioteca no está cargada: @ rpath / libswiftXCTest.dylib

Referenciada desde: /private/var/mobile/Containers/Data/Application/F20A664E-BD2D-4299-A93F-4C6758CBAF34/tmp/MyApp_UI_Tests.xctest/MyApp_UI_Tests

Motivo: la image no se encuentra DevToolsBundleInjection: Error al cargar el package '/private/var/mobile/Containers/Data/Application/F20A664E-BD2D-4299-A93F-4C6758CBAF34/tmp/MyApp_UI_Tests.xctest'

He probado las sugerencias aquí , incluyendo:

  • Configurar las routes de búsqueda de la ruta de ejecución a @ vía_ejecutable / Frameworks para la aplicación y el objective de package de testing
  • Configurar "Contenido incorporado contiene código Swift" a SÍ

También he intentado:

  • Los cocoapodos completos limpian y reconstruyen el proyecto / espacio de trabajo
  • Eliminando todos los DerivedData y ejecutando una compilation limpia

También he visto sugerencias de que esto podría estar relacionado con la identidad de la firma del código, pero el package no se carga en el simulador con la identidad del desarrollador, así como en un dispositivo real.

Si vuelvo a utilizar solo las testings del Objetivo C, todo funciona bien.

¿Qué me he perdido?

Finalmente lo resolví. Para mí, la solución era asegurarse de que la configuration del path de ejecución para el objective del package de testing incluyera @ loader_path / Frameworks , así como @ vía_ejecutable / Frameworks.

Tan pronto como agregué eso, todo se cargó bien.

introduzca la descripción de la imagen aquí