

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Solución de problemas de pruebas de aplicaciones iOS en AWS Device Farm
<a name="troubleshooting-ios-applications"></a>

En el siguiente tema se muestra una lista de mensajes de error que se producen durante la carga de las pruebas de aplicaciones iOS y recomienda soluciones para resolver cada error.

**nota**  
Las siguientes instrucciones se basan en Linux x86\_64 y Mac.

## IOS\_APP\_UNZIP\_FAILED
<a name="IOS_APP_UNZIP_FAILED"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not open your application. Please verify that the file is valid and try again.

Asegúrese de que puede descomprimir el paquete de aplicaciones sin errores. En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- Info.plist
                         `-- (any other files)
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_PAYLOAD\_DIR\_MISSING
<a name="IOS_APP_PAYLOAD_DIR_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the Payload directory inside your application. Please unzip your application, verify that the Payload directory is inside the package, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Si el paquete de aplicaciones iOS es válido, encontrará el directorio {{Payload}} dentro del directorio de trabajo.

   ```
   .
   `-- {{Payload}} (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- Info.plist
                         `-- (any other files)
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_APP\_DIR\_MISSING
<a name="IOS_APP_APP_DIR_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the .app directory inside the Payload directory. Please unzip your application and then open the Payload directory, verify that the .app directory is inside the directory, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Si el paquete de aplicaciones iOS es válido, encontrará un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo, dentro del directorio {{Payload}}.

   ```
   .
   `-- Payload (directory)
           `-- {{AWSDeviceFarmiOSReferenceApp.app}} (directory)
                         |-- Info.plist
                         `-- (any other files)
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_PLIST\_FILE\_MISSING
<a name="IOS_APP_PLIST_FILE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the Info.plist file inside the .app directory. Please unzip your application and then open the .app directory, verify that the Info.plist file is inside the directory, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Si el paquete de aplicaciones iOS es válido, encontrará el archivo {{Info.plist}} dentro del directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo.

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_CPU\_ARCHITECTURE\_VALUE\_MISSING
<a name="IOS_APP_CPU_ARCHITECTURE_VALUE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the CPU architecture value in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the key "UIRequiredDeviceCapabilities" is specified, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor de la arquitectura de la CPU, puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['UIRequiredDeviceCapabilities']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   ['armv7']
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_PLATFORM\_VALUE\_MISSING
<a name="IOS_APP_PLATFORM_VALUE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the platform value in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the key "CFBundleSupportedPlatforms" is specified, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor de la plataforma, puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['CFBundleSupportedPlatforms']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   ['iPhoneOS']
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_WRONG\_PLATFORM\_DEVICE\_VALUE
<a name="IOS_APP_WRONG_PLATFORM_DEVICE_VALUE"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We found the platform device value was wrong in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the value of the key "CFBundleSupportedPlatforms" does not contain the keyword "simulator", and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor de la plataforma, puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['CFBundleSupportedPlatforms']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   ['iPhoneOS']
   ```

   Si la aplicación iOS es válida, el valor no debería contener la palabra clave `simulator`.

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_FORM\_FACTOR\_VALUE\_MISSING
<a name="IOS_APP_FORM_FACTOR_VALUE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the form factor value in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the key "UIDeviceFamily" is specified, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor del factor de forma, puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['UIDeviceFamily']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   [1, 2]
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_PACKAGE\_NAME\_VALUE\_MISSING
<a name="IOS_APP_PACKAGE_NAME_VALUE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the package ñame value in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the key "CFBundleIdentifier" is specified, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor del nombre del paquete, puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['CFBundleIdentifier']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   Amazon.AWSDeviceFarmiOSReferenceApp
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).

## IOS\_APP\_EXECUTABLE\_VALUE\_MISSING
<a name="IOS_APP_EXECUTABLE_VALUE_MISSING"></a>

Si aparece el siguiente mensaje, siga estos pasos para solucionar el problema.

**aviso**  
We could not find the executable value in the Info.plist file. Please unzip your application and then open Info.plist file inside the .app directory, verify that the key "CFBundleExecutable" is specified, and try again.

En el siguiente ejemplo, el nombre del paquete es **AWSDeviceFarmiOSReferenceApp.ipa**.

1. Copie el paquete de aplicaciones a su directorio de trabajo y, a continuación, ejecute el siguiente comando:

   ```
   $ unzip AWSDeviceFarmiOSReferenceApp.ipa
   ```

1. Después de descomprimir correctamente el paquete, ejecute el siguiente comando para que aparezca la estructura de árbol de directorios de trabajo:

   ```
   $ tree .
   ```

   Debe encontrar el archivo {{Info.plist}} dentro de un directorio {{.app}}, como {{AWSDeviceFarmiOSReferenceApp.app}} en nuestro ejemplo:

   ```
   .
   `-- Payload (directory)
           `-- AWSDeviceFarmiOSReferenceApp.app (directory)
                         |-- {{Info.plist}}
                         `-- (any other files)
   ```

1. Para encontrar el valor del ejecutable puede abrir Info.plist mediante Xcode o Python.

   Para Python, puede instalar el módulo biplist ejecutando el siguiente comando:

   ```
   $ pip install biplist
   ```

1. A continuación, abra Python y ejecute el siguiente comando:

   ```
   import biplist
   info_plist = biplist.readPlist('Payload/AWSDeviceFarmiOSReferenceApp-cal.app/Info.plist')
   print info_plist['CFBundleExecutable']
   ```

   Un paquete de aplicaciones iOS válido debería producir una salida similar a esta:

   ```
   AWSDeviceFarmiOSReferenceApp
   ```

   Para obtener más información, consulte [Pruebas de iOS en AWS Device Farm](test-types-ios-tests.md).