objective guide framework developing developer desarrollador apis objective-c ios xcode4 ocunit sentestingkit

objective-c - guide - objective c documentation



Pruebas OCUnit a proyecto iOS existente. "Ld: archivo no encontrado" (6)

Anteriormente tuve el mismo problema y lo resolví marcando Configuración de compilación -> Base SDK de mi objetivo de prueba de la unidad, y me aseguro de que sea correcto según el tipo de proyecto (OSX o iOS).

He estado siguiendo esta publicación del blog: Agregando pruebas unitarias al proyecto existente.

Estoy recibiendo este error sin embargo:

ld: archivo no encontrado: Build / Products / Debug-iphoneos / MyApp.app / MyApp Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang falló con el código de salida 1

Tengo mis propiedades de prueba de destino,

Bundle Loader = $ (BUILT_PRODUCTS_DIR) /MyApp.app/MyApp

Host de prueba = $ (BUNDLE_LOADER)

(que ambos equivalen a: build / Debug-iphoneos / MyApp.app / MyApp)

Creo que esas variables no apuntan a la misma ubicación que el compilador. "build / Debug-iphoneos / ..." vs "Build / Products / Debug-iphoneos / ..."

Podría estar totalmente equivocado en esa suposición, pero de cualquier manera, ¿alguien sabe qué está causando este error o cómo arreglaría esas variables de entorno?

Gracias por cualquier ayuda,

Sam


Buscando "Rutas de búsqueda" dentro de la configuración de compilación. Probablemente hay rutas inexistentes en "Rutas de búsqueda de marco" o en otras rutas como Rutas de búsqueda de bibliotecas


En su archivo pod, asegúrese de haber incluido sus pruebas como objetivo

objetivo ''YourAppNameTests'' do use_frameworks! pod ''AFNetworking'', ''2.6.0'' pod ''TYMProgressBarView'' end

Esto agregará automáticamente enlaces binarios con el marco de las bibliotecas.


Existe la posibilidad de que haya cambiado el nombre de la aplicación después de crear su proyecto. Así que el nombre de tu proyecto y aplicación son diferentes. En la ruta, use el nombre de su aplicación como aparecería en la tienda de itunes en lugar del nombre de su proyecto.


Me encontré con el mismo problema: no tenía sentido ya que la ruta que estaba usando para el ejecutable realmente existía. Mirar de cerca el comando de compilación reveló que había un espacio adicional en la ruta del cargador que era el problema.


Profundice en ~ / Library / Developer / Xcode / DerivedData, en su proyecto. A partir de ahí, siga la ruta del Bundle Loader. Ver lo que realmente está allí.

Ahora mire su Info.plist (o la configuración de información de su objetivo) y busque "Archivo ejecutable" o CFBundleExecutable . Si es ${EXECUTABLE_NAME} , verifique la configuración de "Nombre del producto" de su objetivo.