Skip to content
Allure report logoAllure Report
Main Navigation MódulosDocumentaciónStart

Español

English

Español

English

Appearance

Sidebar Navigation

Introducción

Instalación y Actualización

Instalación para Windows

Instalación para macOS

Instalación para Linux

Instalación para Node.js

Actualización

Primeros pasos

Cómo ver un informe

Mejorar la legibilidad de informes

Mejorar la navegación en informe

Funcionalidades

Pasos de prueba

Adjuntos

Estados de prueba

Ordenar y filtrar

Categorías de defectos

Análisis visual

Análisis de estabilidad de prueba

Historial y reintentos

Cronología

Exportar a CSV

Exportar métricas

Guías

Parametrización JUnit 5

JUnit 5 & Selenide: capturas de pantalla y adjuntos

JUnit 5 & Selenium: capturas de pantalla y adjuntos

Configurar JUnit 5 con GitHub Actions

Parametrización en Pytest

Pytest & Selenium: capturas de pantalla y adjuntos

Pytest & Playwright: capturas de pantalla y adjuntos

Pytest & Playwright: videos

Parametrización en Playwright

Cómo funciona

Visión general

Archivo de resultados de prueba

Archivo de contenedor

Archivo de categorías

Archivo de entorno

Archivo de ejecutor

Archivos de historial

Integraciones

Azure DevOps

Bamboo

GitHub Actions

Jenkins

IDEs de JetBrains

TeamCity

Visual Studio Code

Frameworks

Behat

Empezando

Configuración

Referencia

Behave

Empezando

Configuración

Referencia

Codeception

Empezando

Configuración

Referencia

CodeceptJS

Empezando

Configuración

Referencia

Cucumber.js

Empezando

Configuración

Referencia

Cucumber-JVM

Empezando

Configuración

Referencia

Cucumber.rb

Empezando

Configuración

Referencia

Cypress

Empezando

Configuración

Referencia

Jasmine

Empezando

Configuración

Referencia

JBehave

Empezando

Configuración

Referencia

Jest

Empezando

Configuración

Referencia

JUnit 4

Empezando

Configuración

Referencia

JUnit 5

Empezando

Configuración

Referencia

Mocha

Empezando

Configuración

Referencia

Newman

Empezando

Configuración

Referencia

NUnit

Empezando

Configuración

Referencia

PHPUnit

Empezando

Configuración

Referencia

Playwright

Empezando

Configuración

Referencia

pytest

Empezando

Configuración

Referencia

Pytest-BDD

Empezando

Configuración

Referencia

Reqnroll

Empezando

Configuración

Referencia

REST Assured

Empezando

Configuración

Robot Framework

Empezando

Configuración

Referencia

RSpec

Empezando

Configuración

Referencia

SpecFlow

Empezando

Configuración

Referencia

Spock

Empezando

Configuración

Referencia

TestNG

Empezando

Configuración

Referencia

Vitest

Empezando

Configuración

Referencia

WebdriverIO

Empezando

Configuración

Referencia

xUnit.net

Empezando

Configuración

Referencia

On this page

Comenzando con Allure Robot Framework ​

Última versión de Allure Robot Framework pypi

Genera hermosos informes HTML usando Allure Report y tus pruebas de Robot Framework.

Ejemplo de Allure Report Robot Framework

Configuración ​

1. Prepara tu proyecto ​

  1. Instala la herramienta de línea de comandos Allure Report, si aún no está instalada en tu sistema operativo. Ten en cuenta que Allure Report requiere Java, consulta las instrucciones de instalación.

  2. Abre una terminal y ve al directorio del proyecto. Por ejemplo:

    bash
    cd /home/user/myproject
  3. Si es necesario para la configuración de tu sistema, activa el entorno virtual de Python para tu proyecto.

    Por ejemplo, si el proyecto utiliza un entorno venv, el comando para activarlo podría ser algo como esto:

    bash
    source .venv/bin/activate

    Este paso no es necesario si estás usando el entorno Python del sistema.

  4. Instala el adaptador Allure Robot Framework.

    bash
    pip install allure-robotframework

2. Ejecuta las pruebas ​

Al ejecutar tus pruebas, agrega el argumento de línea de comandos --listener allure_robotframework. Esto permitirá que Allure Robot Framework recopile los resultados de las pruebas en el directorio output/allure. Para especificar otra ruta para el directorio de resultados de las pruebas, agrégalo después del nombre del listener, separado por dos puntos.

Si vas a usar los planes de prueba, también agrega el argumento --prerunmodifier allure_robotframework.testplan.

bash
python -m robot \
  --listener allure_robotframework \
  --prerunmodifier allure_robotframework.testplan \
  ./my_tests
bash
python -m robot \
  --listener allure_robotframework:allure-results \
  --prerunmodifier allure_robotframework.testplan \
  ./my_tests

3. Genera un informe ​

Finalmente, convierte los resultados de las pruebas en un informe HTML. Esto se puede hacer con uno de dos comandos (reemplaza output/allure con tu ruta a los resultados de las pruebas):

  • allure generate output/allure procesa los resultados de las pruebas y guarda un informe HTML en el directorio allure-report. Para ver el informe, usa el comando allure open.

    Usa este comando si necesitas guardar el informe para futuras referencias o para compartirlo con colegas.

  • allure serve output/allure crea el mismo informe que allure generate output/allure, pero lo coloca en un directorio temporal y empieza un servidor web local configurado para mostrar el contenido de este directorio. Luego, el comando abre automáticamente la página principal del informe en un navegador web.

    Usa este comando si necesitas ver el informe por ti mismo y no necesitas guardarlo.

Escribir pruebas ​

El adaptador Allure Robot Framework amplía las características estándar de informes de Robot Framework al proporcionar capacidades adicionales para crear pruebas más informativas y estructuradas. Esta sección resalta las mejoras clave que se pueden utilizar:

  • Anotación de metadatos: Mejora los informes de pruebas con descripciones, enlaces y otros metadatos.
  • Organización de pruebas: Estructura tus pruebas en jerarquías claras para una mejor legibilidad y organización.
  • División de pasos: Descompón las palabras clave en pasos de prueba más pequeños para una mayor comprensión y mantenimiento.
  • Pruebas parametrizadas: Describe claramente los parámetros para las pruebas parametrizadas para especificar diferentes escenarios.
  • Adjuntos: Captura automáticamente capturas de pantalla y otros archivos durante la ejecución de la prueba.
  • Selección de pruebas: Usa un archivo de plan de pruebas para seleccionar qué pruebas ejecutar, lo que permite una ejecución de pruebas flexible.
  • Detalles del entorno: Incluye información completa sobre el entorno para acompañar el informe de prueba.

En la mayoría de los casos, debes indicarle a Allure Robot Framework que se debe asignar cierta propiedad al resultado de la prueba. La mayoría de las propiedades pueden asignarse en el archivo de la suite, a través de la API de Decoradores o a través de la API en tiempo de ejecución.

  • Archivo de suite: usa las palabras clave [Tags], Set Tags o Test Tags en los archivos de la suite (consulta Etiquetado de casos de prueba en la documentación de Robot Framework) para asignar varios datos a las pruebas.

    Al usar las palabras clave [Tags] o Test Tags, se garantiza que los datos se agregarán al resultado de la prueba sin importar cómo se ejecute la prueba en sí.

    Al usar la palabra clave Set Tags, se recomienda ponerla lo más cerca posible al inicio de la prueba. De esta manera, los datos se agregarán incluso si la prueba falla temprano.

    Puedes usar dos puntos o un signo igual para separar el valor del nombre, por ejemplo, allure.label.epic:Web interface es idéntico a allure.label.epic=Web interface.

  • API de Decoradores: agrega un decorador de Python a un método que implementa una palabra clave de Robot Framework. Al usar este enfoque, se garantiza que los datos se agregarán independientemente de cómo se ejecute la palabra clave.

  • API en tiempo de ejecución: usa las funciones de Allure para agregar datos al resultado de la prueba durante la ejecución de una palabra clave. Este enfoque permite construir los datos dinámicamente.

    Ten en cuenta que se recomienda llamar a las funciones de Allure lo más cerca posible al inicio de la implementación, por ejemplo, en las primeras líneas de la implementación de la primera palabra clave. De esta manera, los datos se agregarán incluso si la prueba falla temprano.

Especificar descripción, enlaces y otros metadatos ​

Hay muchos metadatos que puedes agregar a cada prueba para que aparezcan en el informe. Consulta la referencia para más detalles.

*** Test Cases ***

Test Authentication
    [Tags]
    ...  allure.label.owner:John Doe
    ...  allure.label.severity:critical
    # ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
@allure.label('owner', 'John Doe')
@allure.severity('critical')
def test_authentication():
    ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    allure.dynamic.label('owner', 'John Doe')
    allure.dynamic.severity('critical')
    ...

Organizar pruebas ​

Como se describe en Mejorando la navegación en tu informe de prueba, Allure soporta múltiples formas de organizar las pruebas en estructuras jerárquicas. Allure Robot Framework proporciona funciones para asignar los campos relevantes a las pruebas ya sea mediante decoradores o de manera “dinámica” (igual que para los campos de metadatos).

Para especificar la ubicación de una prueba en la jerarquía basada en comportamiento:

*** Test Cases ***

Test Authentication
    [Tags]
    ...  allure.label.epic:Web interface
    ...  allure.label.feature:Essential features
    ...  allure.label.story:Authentication
    # ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
@allure.epic('Web interface')
@allure.feature('Essential features')
@allure.story('Authentication')
def test_authentication():
    ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    allure.dynamic.epic('Web interface')
    allure.dynamic.feature('Essential features')
    allure.dynamic.story('Authentication')
    ...

Para especificar la ubicación de una prueba en la jerarquía basada en suites:

*** Test Cases ***

Test Authentication
    [Tags]
    ...  allure.label.parentSuite:Web interface
    ...  allure.label.suite:Essential features
    ...  allure.label.subSuite:Authentication
    # ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
@allure.parent_suite('Web interface')
@allure.suite('Essential features')
@allure.sub_suite('Authentication')
def test_authentication():
    ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    allure.dynamic.parent_suite('Web interface')
    allure.dynamic.suite('Essential features')
    allure.dynamic.sub_suite('Authentication')
    ...

Para especificar la ubicación de una prueba en la jerarquía basada en paquetes:

*** Test Cases ***

Test Authentication
    [Tags]
    ...  allure.label.package:org.example
    ...  allure.label.testMethod:test_authentication()
    # ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
@allure.label('package', 'org.example')
@allure.label('testMethod', 'test_authentication()')
def test_authentication():
    ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    allure.dynamic.label('package', 'org.example')
    allure.dynamic.label('testMethod', 'test_authentication()')
    ...

Dividir palabras clave en pasos ​

Allure Robot Framework muestra cada palabra clave como un paso separado en el informe de prueba. También proporciona dos formas de crear sub-pasos desde el código Python: “pasos decorados” y “pasos de contexto”, consulta la referencia.

python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    navigate_to_the_website()
    for login, password in [['johndoe', 'qwerty'],
                            ['janedoe', 'pass123']]:
        try_to_authenticate(login, password)


@allure.step('Navigate to the website')
def navigate_to_the_website():
    ...


@allure.step('Try to authenticate as {login}')
def try_to_authenticate(login, password):
    ...
python
import allure
from robot.api.deco import keyword

@keyword('Test Authentication')
def test_authentication():
    with allure.step('Navigate to the website'):
        ...

    for login, password in [['johndoe', 'qwerty'],
                            ['janedoe', 'pass123']]:
        with allure.step(f'Try to authenticate as {login}'):
            ...

Describir pruebas parametrizadas ​

Cuando pasas argumentos a una palabra clave en el archivo de la suite, Allure Report los muestra como parámetros para el paso correspondiente, consulta la referencia.

*** Keywords ***
Try To Authenticate
    [Arguments]    ${login}    ${password}
    Log To Console    Trying to authenticate with ${login} and ${password}...
    # ...

*** Test Cases ***

Test Authentication
    Try To Authenticate    [email protected]    qwerty
    Try To Authenticate    [email protected]    pass123

Adjuntar capturas de pantalla y otros archivos ​

Puedes adjuntar cualquier tipo de archivo a tu informe de Allure. Por ejemplo, una forma popular de hacer que un informe sea más fácil de entender es adjuntar una captura de pantalla de la interfaz de usuario en un momento determinado.

Allure Robot Framework proporciona varias formas de crear un adjunto, tanto desde archivos existentes como generados dinámicamente, consulta la referencia.

*** Settings ***
Library     AllureLibrary
Library     RequestsLibrary

*** Test Cases ***
Test Authentication
    # ...

    ${response}=  GET  https://example.com/image.png
    Attach  ${response.content}
    ...     name=Image  attachment_type=PNG

    Attach File  /path/to/image.png
    ...          name=Image  attachment_type=PNG
python
import allure
import requests
from robot.api.deco import keyword


@keyword('Test Authentication')
def test_authentication():
    ...

    png_bytes = requests.get('https://example.com/image.png').content
    allure.attach(png_bytes, name='img', attachment_type=allure.attachment_type.PNG)

    allure.attach.file('/path/to/image.png', name='img', attachment_type=allure.attachment_type.PNG)

Seleccionar pruebas a través de un archivo de plan de pruebas ​

Si se usa el argumento --prerunmodifier allure_robotframework.testplan y la variable de entorno ALLURE_TESTPLAN_PATH apunta a un archivo existente, Robot Framework solo ejecutará las pruebas listadas en este archivo.

Aquí hay un ejemplo de ejecución de pruebas según un archivo llamado testplan.json:

bash
export ALLURE_TESTPLAN_PATH=testplan.json
python -m robot \
  --listener allure_robotframework \
  --prerunmodifier allure_robotframework.testplan \
  ./my_tests
powershell
$Env:ALLURE_TESTPLAN_PATH = "testplan.json"
python -m robot \
  --listener allure_robotframework \
  --prerunmodifier allure_robotframework.testplan \
  ./my_tests

Información del entorno ​

Para la página principal del informe, puedes recopilar diversa información sobre el entorno en el que se ejecutaron las pruebas.

Por ejemplo, es una buena idea usar esto para recordar la versión del sistema operativo y la versión de Python. Esto puede ayudar al lector futuro a investigar errores que solo se reproducen en algunos entornos.

Allure Report Environments Widget

Para proporcionar información del entorno, pon un archivo llamado environment.properties en el directorio de resultados de las pruebas (output/allure por defecto) después de ejecutar las pruebas. Consulta el ejemplo en Archivo de entorno.

Ten en cuenta que esta característica debe usarse para propiedades que no cambian para todas las pruebas en el informe. Si tienes propiedades que pueden ser diferentes para diferentes pruebas, considera usar Pruebas parametrizadas.

Pager
Previous pageConfiguración
Next pageConfiguración
Powered by

Únete a nuestro boletín

Allure TestOps
  • Visión general
  • Por qué elegirnos
  • Nube
  • Autoalojado
  • Historias de éxito
Compañía
  • Documentación
  • Blog
  • Sobre nosotros
  • Contacto
  • Eventos
© 2025 Qameta Software Inc. All rights reserved.