> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/powershell-universal/es/automatizacion/tests.md).

# Pruebas

Ejecute y revise conjuntos de pruebas de Pester directamente en PowerShell Universal, con seguimiento de los resultados históricos de ficheros de prueba individuales y de ejecuciones completas.

> Esta función requiere una [licencia](/powershell-universal/es/licensing.md).

PowerShell Universal se integra con [Pester](https://pester.dev/) para ejecutar conjuntos de pruebas desde su repositorio y conservar sus resultados. Utilice **Run > Tests** para detectar ficheros de prueba, iniciar ejecuciones, programarlas y revisar resultados históricos.

## Detección de pruebas

PowerShell Universal analiza el repositorio de forma recursiva en busca de ficheros con el nombre `*.tests.ps1`. Los ficheros detectados aparecen en la pestaña **Test Files**. Cree o edite los ficheros desde **Build > Scripts** y, a continuación, actualice los ficheros de prueba cuando cambie el contenido del repositorio.

Utilice la vista de carpetas para examinar los ficheros de prueba detectados por sus carpetas del repositorio. Seleccione una carpeta para limitar la lista de ficheros a esa ubicación, o seleccione **Tests** para volver a todos los ficheros.

## Preparar un entorno de ejecución

Instale Pester en todos los entornos de ejecución que vayan a ejecutar pruebas. Una ejecución falla cuando `Invoke-Pester` no está disponible en el entorno seleccionado.

Las variables de entorno configuradas para el entorno de ejecución seleccionado están disponibles mientras se ejecuta Pester. Esto permite que las pruebas utilicen valores de configuración sin codificarlos de forma fija en los ficheros de prueba. Trate los valores sensibles como secretos y recupérelos a través de la configuración adecuada de PowerShell Universal.

## Ejecutar pruebas desde la consola de administración

1. Vaya a **Run > Tests**.
2. Seleccione **Run Test** para un fichero, o **Run All Tests** para ejecutar los ficheros de prueba detectados.
3. Elija la credencial, el entorno de ejecución y el ordenador o grupo de ordenadores que se van a utilizar.
4. Seleccione **Run**. La ejecución se abre en la vista de resultados mientras está en cola o en curso.

Puede ejecutar un fichero de prueba individual, una carpeta del repositorio o una ruta con comodines. Cuando se selecciona una carpeta, PowerShell Universal ejecuta los ficheros `*.tests.ps1` y `*.test.ps1` coincidentes que se encuentren en ella.

## Ejecutar pruebas con PowerShell

Utilice `Invoke-PSUTest` para iniciar una ejecución de Pester desde un script, un terminal o un flujo de trabajo de automatización. Pase una ruta o un objeto `TestFile`.

```powershell
Invoke-PSUTest -Path '.\tests\api.tests.ps1'
```

Seleccione un subconjunto de pruebas de Pester mediante etiquetas, etiquetas excluidas o nombres completos de pruebas.

```powershell
Invoke-PSUTest -Path '.\tests\api.tests.ps1' `
    -Tag Smoke `
    -ExcludeTag Slow `
    -Test 'API returns 200'
```

De forma predeterminada, el cmdlet devuelve el registro de ejecución de prueba recién creado. Añada `-Wait` para esperar a una ejecución completada o fallida. `-Timeout` establece el límite de espera en segundos y su valor predeterminado es 300. Añada `-IncludeSuite` para devolver tanto la ejecución de prueba como los detalles analizados del conjunto de pruebas.

```powershell
$result = Invoke-PSUTest -Path '.\tests\api.tests.ps1' -Wait -IncludeSuite
$result.TestRun
$result.TestSuite
```

Utilice `-Environment` cuando las pruebas requieran un entorno de ejecución concreto.

## Programar ejecuciones de pruebas

Cree ejecuciones programadas de Pester desde **Run > Tests** seleccionando **Create Schedule**. Las pruebas admiten programaciones simples, continuas, cron y únicas. Seleccione la ruta de prueba que se va a ejecutar y las mismas opciones de ejecución utilizadas para otras automatizaciones programadas, incluidos el entorno de ejecución, la credencial y la configuración del ordenador.

Las rutas de prueba programadas se validan con el repositorio antes de ejecutarse. Mantenga las rutas dentro del repositorio y asegúrese de que el fichero, la carpeta o el comodín referenciado se resuelva en uno o varios ficheros de prueba.

## Revisar los resultados de las pruebas

Cada ejecución de prueba registra su estado, las horas de inicio y de fin, los totales, los fallos, los errores, las pruebas omitidas y los detalles de los errores de ejecución. PowerShell Universal escribe la salida de Pester en formato NUnit XML y almacena los resultados analizados del conjunto y de los casos de prueba para que sigan disponibles una vez finalizada la ejecución.

Abra una ejecución de prueba desde **Run > Tests > Test Results** para inspeccionar el resultado global y profundizar en los conjuntos y los casos individuales. Las ejecuciones históricas permanecen disponibles para su comparación y para la resolución de problemas.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/powershell-universal/es/automatizacion/tests.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
