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 Jasmine ​

Allure Jasmine npm última versión

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

Este adaptador también se puede usar con Jest si tu proyecto utiliza el corredor de pruebas de Jasmine, que es el predeterminado en Jest versión 26 o anterior. (Sin embargo, se recomienda cambiar a Circus y usar Allure Jest).

Ejemplo de informe de Allure Jasmine

Configuración ​

1. Prepara tu proyecto ​

  1. Asegúrate de que Node.js esté instalado.

    Allure Jasmine se prueba con Node.js 18 y versiones superiores. Las versiones anteriores pueden funcionar, pero no podemos garantizarlo.

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

    bash
    cd /home/user/myproject
  3. Asegúrate de que Allure Report esté instalado. Si no lo está, sigue las instrucciones de instalación. Ten en cuenta que Allure Report requiere Java.

  4. Instala el adaptador Allure Jasmine.

    bash
    npm install --save-dev allure-jasmine
    bash
    yarn add --dev allure-jasmine allure-js-commons
    bash
    pnpm install --dev allure-jasmine
  5. Crea un archivo de configuración, por ejemplo, helpers/setup.js o helpers/setup.ts.

    Puedes elegir cualquier nombre de archivo, siempre y cuando el marco de pruebas pueda encontrarlo según su configuración.

    • Si usas Jasmine, asegúrate de que el nombre del archivo coincida con una de las expresiones regulares en la opción helpers de tu archivo spec/support/jasmine.json.

    • Si usas Jest, asegúrate de que el nombre del archivo esté listado en la opción setupFilesAfterEnv de tu archivo jest.config.js.

    ts
    import AllureJasmineReporter from "allure-jasmine";
    
    jasmine.getEnv().addReporter(
      new AllureJasmineReporter({
        resultsDir: "allure-results",
      }),
    );
  6. Configura otras opciones si es necesario, consulta Configuración de Allure Jasmine.

2. Ejecuta las pruebas ​

Ejecuta tus pruebas de Jasmine de la misma manera que las ejecutarías normalmente. Por ejemplo:

bash
npm test
bash
yarn test
bash
pnpm test

Esto guardará los datos necesarios en allure-results o en otro directorio, según la configuración. Si el directorio ya existe, los nuevos archivos se agregarán a los existentes, de modo que un informe futuro se basará en todos ellos.

3. Genera un informe ​

Finalmente, ejecuta Allure para convertir los resultados de las pruebas en un informe HTML. Esto abrirá automáticamente tu navegador para ver el informe.

bash
allure serve allure-results

Si es necesario, reemplaza allure-results con la ruta al directorio especificado en la Configuración.

Existen algunas opciones que pueden afectar la forma en que se genera el informe. Ejecuta allure --help para ver la lista completa de opciones.

Escribir pruebas ​

El adaptador Allure Jasmine amplía las funciones estándar de informes de Jasmine proporcionando 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 organizar pruebas.
  • División de Pasos: Divide las pruebas en pasos más pequeños para una mayor comprensión y mantenimiento.
  • Pruebas Parametrizadas: Describe claramente los parámetros de las pruebas parametrizadas para especificar diferentes escenarios.
  • Establecer etiquetas globalmente: Utiliza variables de entorno para establecer metadatos y otras etiquetas.
  • Archivos 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 flexible de pruebas.
  • Detalles del Entorno: Incluye información detallada del entorno para acompañar el informe de prueba.

En la mayoría de los casos, Allure Jasmine proporciona dos formas diferentes de usar una función: la API en tiempo de ejecución y la API de metadatos.

  • API en tiempo de ejecución: usa las funciones de Allure para agregar ciertos datos al resultado de la prueba durante su ejecución. Este enfoque permite construir los datos de manera dinámica.

    Ten en cuenta que se recomienda llamar a las funciones de Allure lo más cerca posible del inicio de la prueba. De esta manera, los datos se agregarán incluso si la prueba falla temprano.

  • API de Metadatos: agrega una etiqueta de metadatos (que comienza con @) en el nombre de la prueba. Allure Jasmine la extraerá y actualizará los datos del resultado de la prueba en consecuencia. Al usar este enfoque, los datos se garantizarán que se agreguen independientemente de cómo se ejecute la prueba.

Agregar metadatos ​

Allure te permite enriquecer tus informes con una variedad de metadatos. Esta información adicional proporciona contexto y detalles para cada prueba, mejorando la utilidad del informe. Consulta la sección de referencia de metadatos para obtener una lista exhaustiva de lo que se puede agregar.

ts
import * as allure from "allure-js-commons";

describe("Test My Website", function () {
  it("Test Authentication", async () => {
    await allure.owner("John Doe");
    await allure.tags("Web interface", "Authentication");
    await allure.severity("critical");
    // ...
  });
});
ts
describe("Test My Website", function () {
  it(
    "Test Authentication" +
      " @allure.label.owner:JohnDoe" +
      " @allure.label.tag:WebInterface" +
      " @allure.label.tag:Authentication" +
      " @allure.label.severity:critical",
    async () => {
      // ...
    },
  );
});

Organizar pruebas ​

Como se describe en Mejorando la navegación en tu informe de pruebas, Allure admite múltiples formas de organizar las pruebas en estructuras jerárquicas.

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

ts
import * as allure from "allure-js-commons";

describe("Test My Website", function () {
  it("Test Authentication", async () => {
    await allure.epic("Web interface");
    await allure.feature("Essential features");
    await allure.story("Authentication");
    // ...
  });
});
ts
describe("Test My Website", function () {
  it(
    "Test Authentication" +
      " @allure.label.epic:WebInterface" +
      " @allure.label.feature:EssentialFeatures" +
      " @allure.label.story:Authentication",
    async () => {
      // ...
    },
  );
});

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

ts
import * as allure from "allure-js-commons";

describe("Test My Website", function () {
  it("Test Authentication", async () => {
    await allure.parentSuite("Tests for web interface");
    await allure.suite("Tests for essential features");
    await allure.subSuite("Tests for authentication");
    // ...
  });
});
ts
describe("Test My Website", function () {
  it(
    "Test Authentication" +
      " @allure.label.parentSuite:TestsForWebInterface" +
      " @allure.label.suite:TestsForEssentialFeatures" +
      " @allure.label.subSuite:TestsForAuthentication",
    async () => {
      // ...
    },
  );
});

Dividir una prueba en pasos ​

Para crear pasos y sub-pasos, puedes usar la función step(), consulta la referencia.

ts
import * as allure from "allure-js-commons";
import { Status } from "allure-js-commons";

describe("Test My Website", function () {
  it("Test Authentication", async () => {
    await allure.step("Step 1", async () => {
      await allure.step("Sub-step 1", async (ctx) => {
        await ctx.parameter("foo", "1");
        // ...
      });
      await allure.step("Sub-step 2", async (ctx) => {
        await ctx.parameter("foo", "2");
        // ...
      });
    });
    await allure.logStep("Step 2", Status.SKIPPED);
  });
});

Describir pruebas parametrizadas ​

Una forma típica de implementar el patrón de pruebas parametrizadas en Jasmine es definir la prueba en un bucle y usar la variable del bucle en el título y cuerpo de la prueba.

Para mostrar un valor de parámetro en el informe de pruebas, pásalo a la función parameter().

ts
import * as allure from "allure-js-commons";

describe("Test My Website", function () {
  for (const login of ["johndoe", "[email protected]"]) {
    it(`Test Authentication as ${login}`, async () => {
      allure.parameter("login", login);
      allure.parameter("time", new Date().toUTCString(), { excluded: true });
      // ...
    });
  }
});

Establecer etiquetas globalmente ​

Cualquier etiqueta, incluidas las personalizadas, puede ser configurada mediante las variables de entorno de tu sistema operativo. Aquí tienes un ejemplo (asumiendo que usas el gestor de paquetes npm):

bash
export ALLURE_LABEL_epic=WebInterface
npm test
powershell
$Env:ALLURE_LABEL_epic = "WebInterface"
npm test

Adjuntar capturas de pantalla y otros archivos ​

En los informes de Allure, tienes la capacidad de adjuntar varios tipos de archivos, lo que puede mejorar considerablemente la comprensión del informe. Una práctica común es adjuntar capturas de pantalla que capturen el estado de la interfaz de usuario en momentos específicos durante la ejecución de la prueba.

Para obtener instrucciones detalladas sobre cómo implementar los adjuntos, consulta la sección de adjuntos en la referencia de Allure Jasmine.

ts
import * as allure from "allure-js-commons";
import { ContentType } from "allure-js-commons";

describe("Test My Website", function () {
  it("Test Authentication", async () => {
    // ...

    await allure.attachment("Text file", "This is the file content.", ContentType.TEXT);

    await allure.attachmentPath("Screenshot", "/path/to/image.png", {
      contentType: ContentType.PNG,
      fileExtension: "png",
    });
  });
});

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

Si la variable de entorno ALLURE_TESTPLAN_PATH está definida y apunta a un archivo existente, Jasmine solo ejecutará las pruebas listadas en este archivo.

Aquí tienes un ejemplo de ejecución de pruebas según un archivo llamado testplan.json (asumiendo que usas el gestor de paquetes npm):

bash
export ALLURE_TESTPLAN_PATH=testplan.json
npm test
powershell
$Env:ALLURE_TESTPLAN_PATH = "testplan.json"
npm test

Información del entorno ​

Para la página principal del informe, puedes recopilar diversas informaciones sobre el entorno en el que se ejecutaron las pruebas. Para hacerlo, edita el objeto environmentInfo en la configuración.

Por ejemplo, es una buena idea usar esto para recordar la versión del SO y la versión de Node.js obtenidas de los objetos os y process. Esto puede ayudar al futuro lector a investigar errores que solo se reproducen en algunos entornos.

Widget de Entornos de Allure Report

ts
import AllureJasmineReporter from "allure-jasmine";
import * as os from "node:os";

jasmine.getEnv().addReporter(
  new AllureJasmineReporter({
    environmentInfo: {
      os_platform: os.platform(),
      os_release: os.release(),
      os_version: os.version(),
      node_version: process.version,
    },
  }),
);

Ten en cuenta que si tu lanzamiento incluye múltiples ejecuciones de Jasmine (consulta Cómo funciona), Allure Jasmine solo guardará la información del entorno de la última ejecución.

Pager
Previous pageReferencia
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.