es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El objetivo de prueba no se compila en XCode 13.

Estamos tratando de migrar nuestro código de XCode 12 a 13. Nuestro código y todas las dependencias se compilaban en XCode 12.

Sin embargo, desde que pasamos a XCode 13, nuestro objetivo de prueba unitaria no se está compilando. Estamos usando lo siguiente:

XCode 13.1
Mac OS 11.6
Carthage para la gestión de dependencias.
Fastlane para ejecutar las pruebas.

La aplicación, las pruebas de UI y otro conjunto de pruebas se están compilando correctamente. La compilación de pruebas parece quedarse atascada después de un cierto número de archivos y cuando detenemos la compilación, lanza el siguiente error:

CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler (en el objetivo 'NombreDeLaAppPruebas' del proyecto 'NombreDeLaApp')

  Comando CompileSwiftSources falló con un código de salida no nulo

Hemos intentado lo siguiente:

iOS Deployment Target -> 12
Other Linker flags -> -ObjC
Eliminar la caché de Carthage y reconstruir Carthage

Nada parece funcionar. Cualquier ayuda es apreciada.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Resolución de errores de compilación de pruebas unitarias en XCode 13

    Como experto en tecnología de la información especializado en Swift, x86-64, Carthage, iOS 15 y XCode 13, aquí presento algunas recomendaciones que pueden ayudar a solucionar el problema de migración de código de XCode 12 a XCode 13 encontrando errores de compilación en el destino de pruebas unitarias.

    En primer lugar, asegúrese de que todas las dependencias utilizadas en el proyecto sean compatibles con XCode 13. Esto se puede hacer mediante la actualización de las dependencias del proyecto a través de Carthage y la reconstrucción del proyecto. También se recomienda verificar que las dependencias de Carthage y la configuración de los frameworks en la fase “Link Binary With Libraries” sean correctas y que se haya marcado la opción “Embedded Content Contains Swift Code” en las opciones de construcción.

    En segundo lugar, intente actualizar la configuración del proyecto en el destino de implementación de iOS -> 12 y asegúrese de que la configuración del proyecto para el destino de pruebas sea correcta, especialmente con respecto a la compatibilidad de la versión del lenguaje Swift entre el destino principal y el destino de pruebas. Otras posibles soluciones podrían ser eliminar cualquier declaración de importación obsoleta o no utilizada, limpiar la carpeta de construcción, reiniciar el simulador y cerrar y volver a abrir XCode.

    Finalmente, si ninguna de las soluciones anteriores funciona, podría ser útil verificar los registros de XCode en el Navigator de Informes para identificar cualquier error o advertencia adicional que pueda estar causando que el destino de pruebas unitarias no se compile. Si el problema persiste después de todos estos pasos, puede ser necesario verificar problemas de compatibilidad con Fastlane, cambiar a un marco de pruebas diferente o buscar más ayuda en la comunidad de desarrolladores de Xcode.

Comments are closed.