

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.

# Adición de archivos adicionales a su paquete de pruebas en Device Farm
<a name="custom-test-environments-extending-files"></a>

Es posible que desee utilizar archivos adicionales como parte de sus pruebas, ya sea como archivos de configuración adicionales o como datos de prueba adicionales. Puede añadir estos archivos adicionales a su paquete de prueba antes de cargarlo en AWS Device Farm y, a continuación, acceder a ellos desde el modo de entorno personalizado. Básicamente, todos los formatos de carga de paquetes de prueba (ZIP, IPA, APK, JAR, etc.) son formatos de archivo de paquetes que admiten las operaciones ZIP estándar.

Puedes añadir archivos a tu archivo de prueba antes de cargarlo AWS Device Farm mediante el siguiente comando:

```
$ zip zip-with-dependencies.zip extra_file
```

Para un directorio de archivos adicionales:

```
$ zip -r zip-with-dependencies.zip extra_files/
```

Estos comandos funcionan según lo previsto en todos los formatos de carga de paquetes de prueba, excepto en los archivos IPA. En el caso de los archivos IPA, especialmente cuando se utilizan con XCUITests ellos, le recomendamos que coloque los archivos adicionales en una ubicación ligeramente diferente debido a la forma en que se diseñan los AWS Device Farm paquetes de prueba de iOS. Al crear la prueba de iOS, el directorio de la aplicación de prueba se ubicará dentro de otro directorio denominado{{Payload}}.

Por ejemplo, este es el aspecto que puede tener uno de esos directorios de prueba de iOS:

```
$ tree
.
└── Payload
    └── ADFiOSReferenceAppUITests-Runner.app
        ├── ADFiOSReferenceAppUITests-Runner
        ├── Frameworks
        │   ├── XCTAutomationSupport.framework
        │   │   ├── Info.plist
        │   │   ├── XCTAutomationSupport
        │   │   ├── _CodeSignature
        │   │   │   └── CodeResources
        │   │   └── version.plist
        │   └── XCTest.framework
        │       ├── Info.plist
        │       ├── XCTest
        │       ├── _CodeSignature
        │       │   └── CodeResources
        │       ├── en.lproj
        │       │   └── InfoPlist.strings
        │       └── version.plist
        ├── Info.plist
        ├── PkgInfo
        ├── PlugIns
        │   ├── ADFiOSReferenceAppUITests.xctest
        │   │   ├── ADFiOSReferenceAppUITests
        │   │   ├── Info.plist
        │   │   └── _CodeSignature
        │   │       └── CodeResources
        │   └── ADFiOSReferenceAppUITests.xctest.dSYM
        │       └── Contents
        │           ├── Info.plist
        │           └── Resources
        │               └── DWARF
        │                   └── ADFiOSReferenceAppUITests
        ├── _CodeSignature
        │   └── CodeResources
        └── embedded.mobileprovision
```

Para estos XCUITest paquetes, agrega cualquier archivo adicional al directorio que termine {{.app}} dentro del {{Payload}} directorio. Por ejemplo, los siguientes comandos muestran cómo se puede añadir un archivo a este paquete de prueba:

```
$ mv extra_file Payload/*.app/
$ zip -r my_xcui_tests.ipa Payload/
```

Al añadir un archivo a su paquete de prueba, puede esperar un comportamiento de interacción ligeramente diferente en AWS Device Farm en función del formato de carga. Si la carga utilizó la extensión de archivo ZIP, la AWS Device Farm descomprimirá automáticamente antes de la prueba y dejará los archivos descomprimidos en la ubicación con la {{$DEVICEFARM\_TEST\_PACKAGE\_PATH}} variable de entorno. (Esto significa que si agregas un archivo llamado {{extra\_file}} a la raíz del archivo, como en el primer ejemplo, se ubicará allí {{$DEVICEFARM\_TEST\_PACKAGE\_PATH/extra\_file}} durante la prueba). 

Para usar un ejemplo más práctico, si eres un usuario de Appium TestNG que quiere incluir un {{testng.xml}} archivo con tu prueba, puedes incluirlo en tu archivo usando el siguiente comando:

```
$ zip zip-with-dependencies.zip testng.xml
```

Luego, puede cambiar su comando de prueba en el modo de entorno personalizado por el siguiente:

```
java -D appium.screenshots.dir=$DEVICEFARM_SCREENSHOT_PATH org.testng.TestNG -testjar *-tests.jar -d $DEVICEFARM_LOG_DIR/test-output $DEVICEFARM_TEST_PACKAGE_PATH/testng.xml
```

Si la extensión de carga del paquete de prueba no es ZIP (por ejemplo, un archivo APK, IPA o JAR), el propio archivo del paquete cargado se encuentra en. {{$DEVICEFARM\_TEST\_PACKAGE\_PATH}} Como siguen siendo archivos en formato de archivo, puede descomprimirlos para acceder a los archivos adicionales desde dentro. Por ejemplo, el siguiente comando descomprimirá el contenido del paquete de prueba (para los archivos APK, IPA o JAR) en el directorio: {{/tmp}}

```
unzip $DEVICEFARM_TEST_PACKAGE_PATH -d /tmp
```

En el caso de un archivo APK o JAR, encontrarás los archivos adicionales descomprimidos en el {{/tmp}} directorio (por ejemplo,). {{/tmp/extra\_file}} En el caso de un archivo IPA, como se explicó anteriormente, los archivos adicionales estarían en una ubicación ligeramente diferente dentro de la carpeta que termina en{{.app}}, que está dentro del directorio. {{Payload}} Por ejemplo, según el ejemplo anterior de IPA, el archivo se encontraría en la ubicación {{/tmp/Payload/ADFiOSReferenceAppUITests-Runner.app/extra\_file}} (se puede hacer referencia como). {{/tmp/Payload/\*.app/extra\_file}}

Para ver otras maneras de ampliar el conjunto de pruebas y optimizar las pruebas, consulte [Ampliación de los entornos de prueba personalizados en Device Farm](custom-test-environments-extending.md).