

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.

# Integración de XCTest UI para iOS con Device Farm
<a name="test-types-ios-xctest-ui"></a>

Device Farm es compatible con el marco de pruebas de XCTest UI. En concreto, Device Farm admite las pruebas de interfaz de usuario de XCTest escritas tanto Objective-C en Swift como en [Swift](https://developer.apple.com/swift/). 

 El marco de XCTest UI permite realizar pruebas de la interfaz de usuario en el desarrollo de iOS, basado en XCTest. Para obtener más información, consulte [User Interface Testing](https://developer.apple.com/library/prerelease/ios/documentation/DeveloperTools/Conceptual/testing_with_xcode/chapters/09-ui_testing.html#//apple_ref/doc/uid/TP40014132-CH13-SW1) en la iOS Developer Library.

Para obtener información general sobre las pruebas en Device Farm, consulte [Marcos de pruebas y pruebas integradas en AWS Device Farm](test-types.md).

Siga estas instrucciones para integrar Device Farm con el marco de pruebas de XCTest UI para iOS.

**Topics**
+ [Preparación de las pruebas de XCTest UI para iOS](#test-types-ios-xctest-ui-prepare)
+ [Opción 1: creación de un paquete de XCTest UI .ipa](#how-to-use-create-XCTestUI-ipa-package)
+ [Opción 2: creación de un paquete de XCTest UI .zip](#how-to-use-create-XCTestUI-zip-package)
+ [Cargar las pruebas de XCTest UI para iOS](#test-types-ios-xctest-ui-upload)

## Preparación de las pruebas de XCTest UI para iOS
<a name="test-types-ios-xctest-ui-prepare"></a>

Puede cargar un archivo `.ipa` o `.zip` para su paquete de pruebas de XCTEST\_UI.

Un archivo `.ipa` es un archivo de aplicaciones que contiene la aplicación iOS Runner en formato de paquete. *No se pueden incluir archivos adicionales dentro del archivo `.ipa`.*

Si sube un archivo `.zip`, puede contener directamente la aplicación iOS Runner o un archivo `.ipa`. También puede incluir otros archivos dentro del archivo `.zip` si desea utilizarlos durante las pruebas. Por ejemplo, puede incluir archivos como `.xctestrun`, `.xcworkspace` o `.xcodeproj` dentro de un archivo `.zip`, para ejecutar los planes de pruebas de XCUI en una granja de dispositivos. Las instrucciones detalladas sobre cómo ejecutar los planes de pruebas están disponibles en el archivo de especificaciones de pruebas predeterminado para el tipo de prueba XCUI. 

## Opción 1: creación de un paquete de XCTest UI .ipa
<a name="how-to-use-create-XCTestUI-ipa-package"></a>

Xcode crea *tu AppName* UITest-Runner.app paquete cuando compilas tu proyecto para probarlo. Se encuentra en el directorio Products del proyecto.

Para crear un archivo .ipa:

1. Cree un directorio denominado {{Payload}}.

1. Añada el directorio de aplicaciones al directorio Payload.

1. Archive el directorio Payload en un archivo `.zip` y, a continuación, cambie la extensión del archivo a `.ipa`.

 La siguiente estructura de carpetas muestra cómo una aplicación de ejemplo llamada se {{my-project-nameUITest-Runner.app}} empaquetaría como un `.ipa` archivo: 

```
.
└── my-project-nameUITest.ipa
    └── Payload (directory)
        └── my-project-nameUITest-Runner.app
```

## Opción 2: creación de un paquete de XCTest UI .zip
<a name="how-to-use-create-XCTestUI-zip-package"></a>

Device Farm genera automáticamente un archivo `.xctestrun` para ejecutar todo el conjunto de pruebas de XCTest UI. Si quiere usar su propio archivo `.xctestrun` en Device Farm, puede comprimir sus archivos `.xctestrun` y el directorio de aplicaciones en un archivo `.zip`. Si ya tienes un `.ipa` archivo para tu paquete de prueba, puedes incluirlo aquí en su lugar{{\*-Runner.app}}.

```
.
└── swift-sample-UI.zip (directory)
   ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa
   ├── SampleTestPlan_2.xctestrun
   ├── SampleTestPlan_1.xctestrun
   └── (any other files)
```

 Si quieres ejecutar un plan de pruebas de Xcode para tus pruebas de XCUI en Device Farm, puedes crear un zip que contenga el archivo *my-project-name UITest-Runner.app **o** *my-project-name** y los archivos de código fuente de xcode necesarios para ejecutar XCTEST\_UI con planes de prueba, incluido un UITest.ipa archivo o. `.xcworkspace` `.xcodeproj`

A continuación, se muestra un ejemplo de zip con un archivo `.xcodeproj`: 

```
.
└── swift-sample-UI.zip (directory)
   ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa
   ├── (any directory)
   └── {{SampleXcodeProject.xcodeproj}}
        ├── Testplan_1.xctestplan
        ├── Testplan_2.xctestplan
        └── (any other source code files created by xcode with .xcodeproj)
```

A continuación, se muestra un ejemplo de zip con un archivo `.xcworkspace`: 

```
.
└──swift-sample-UI.zip (directory)
   ├── my-project-nameUITest-Runner.app [OR] my-project-nameUITest.ipa
   └── (any directory)
   │   ├── SampleXcodeProject.xcodeproj
   │   ├── Testplan_1.xctestplan
   │   ├── Testplan_2.xctestplan
   |   └── (any other source code files created by xcode with .xcodeproj)
   └── {{SampleWorkspace.xcworkspace}}
       └── contents.xcworkspacedata
```

**nota**  
Asegúrese de no tener ningún directorio llamado Payload dentro del paquete .zip de XCTest UI. 

## Cargar las pruebas de XCTest UI para iOS
<a name="test-types-ios-xctest-ui-upload"></a>

Utilice la consola de Device Farm para cargar las pruebas.

1. Inicie sesión en la consola de Device Farm en [https://console.aws.amazon.com/devicefarm](https://console.aws.amazon.com/devicefarm).

1. En el panel de navegación de Device Farm, seleccione **Pruebas de dispositivos móviles** y, a continuación, seleccione **Proyectos**.

1. En la lista de proyectos, seleccione el proyecto en el que desea cargar las pruebas.
**sugerencia**  
Puede utilizar la barra de búsqueda para filtrar la lista de proyectos por nombre.  
Para crear un proyecto, siga las instrucciones de [Creación de un proyecto en AWS Device Farm](how-to-create-project.md).

1. Seleccione **Crear ejecución**.

1. En **Configuración de ejecución**, en la sección **Tipo de ejecución**, seleccione **Aplicación iOS**.

1. En **Seleccionar aplicación**, en la sección **Opciones de selección de aplicaciones**, elija **Cargar aplicación propia**. A continuación, seleccione **Elegir archivo** en **Cargar aplicación**.

1. Busque y elija el archivo de aplicación de iOS. El archivo debe ser un archivo .ipa.
**nota**  
Asegúrese de que el archivo .ipa se ha compilado para un dispositivo iOS y no para un simulador.

1. En la página **Configurar prueba**, en la sección **Seleccionar marco de pruebas**, elija **Interfaz de usuario de XCTest**. A continuación, seleccione **Elegir archivo** en **Cargar aplicación**.

1. Busque y elija el archivo .ipa o .zip que contiene la aplicación de ejecución de pruebas de XCTest UI para iOS. 

1. Complete los demás pasos del proceso de creación de la ejecución. Seleccione los dispositivos en los que desea realizar la prueba y, de manera opcional, puede especificar una configuración adicional.

1. Seleccione **Crear ejecución**. Device Farm ejecuta su prueba y muestra los resultados en la consola.