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

Referencia de Allure WebdriverIO ​

Estas son las funciones que puedes usar para integrar tus pruebas de WebdriverIO con Allure.

Metadatos ​

Asigna la descripción, enlaces y otros metadatos de una prueba.

Description ​

  • addDescription(name: string, descriptionType: string)

Establece la descripción de la prueba.

El segundo argumento determina cómo se renderizará el texto. Si es igual a TYPE.MARKDOWN, el texto será interpretado utilizando la sintaxis de Markdown. Cualquier formato HTML, si está presente, será eliminado por razones de seguridad. Para mantener el HTML intacto, pasa TYPE.HTML al segundo argumento.

INFO

Usar descripciones en HTML no es seguro y puede romper el diseño del informe de pruebas o incluso crear un vector de ataque XSS para tu organización.

ts
import { addDescription, TYPE } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addDescription("Attempt to log into the website.", TYPE.MARKDOWN);
  // ...
});

Owner ​

  • addOwner(owner: string)

Establece el propietario de la prueba.

ts
import { addOwner } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addOwner("John Doe");
  // ...
});

Tag ​

  • addTag(tag: string)

Establece los tags de la prueba.

ts
import { addTag } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addTag("web interface");
  addTag("authentication");
  // ...
});

Severity ​

  • addSeverity(severity: string)

Establece la severidad de la prueba.

Los valores permitidos son: “trivial”, “minor”, “normal”, “critical”, and “blocker”.

ts
import { addSeverity } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addSeverity("critical");
  // ...
});

Label ​

  • addLabel(name: string, value: string)

Establece una etiqueta arbitraria para la prueba. Esta es la implementación subyacente de muchas otras funciones de Allure.

El primer argumento de la función es el nombre de la etiqueta. Puede ser cualquier cadena.

Puedes llamar a addLabel() varias veces para crear un array de valores bajo el nombre dado.

ts
import { addLabel } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addLabel("my custom label", "value");
  // ...
});

ID ​

  • addAllureId(allureId: string)

Establece el ID de la prueba.

ts
import { addAllureId } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addAllureId("123");
  // ...
});

Link ​

  • addLink(url: string, name?: string, type?: string)
  • addIssue(issue: string)
  • addTestId(testId: string)

Añade un enlace relacionado con la prueba.

Según el type (que puede ser cualquier cadena), Allure intentará cargar un patrón de enlace correspondiente para procesar la URL, según lo definido por las opciones de configuración issueLinkTemplate y tmsLinkTemplate. Si no se encuentra un patrón para el tipo dado, el enlace no será añadido.

El name será usado como el texto del enlace. Si se omite, se utilizará la URL en su lugar.

Para mayor comodidad, Allure proporciona dos funciones abreviadas con tipos de enlace pre-seleccionados: addIssue() y addTestId().

ts
import { addIssue, addLink, addTestId } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addLink("https://dev.example.com/", "Website");
  addIssue("AUTH-123");
  addTestId("TMS-456");
  // ...
});

Si usas el ejecutor Cucumber.js y tienes habilitada la opción useCucumberStepReporter, también puedes añadir enlaces mediante las etiquetas Gherkin @issue y @testId.

gherkin
Feature: Labels

  @issue=AUTH-123
  @testId=TMS-456
  Scenario: Create new label for authorized user
    When I open labels page
    And I create label with title "hello"
    Then I should see label with title "hello"

Jerarquía basada en el comportamiento ​

  • addEpic(epicName: string)
  • addFeature(featureName: string)
  • addStory(storyName: string)

Asigna nombres de epic, funciones o historias de usuario para una prueba, como parte de la jerarquía basada en el comportamiento de Allure.

ts
import { addEpic, addFeature, addStory } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addEpic("Web interface");
  addFeature("Essential features");
  addStory("Authentication");
  // ...
});

TIP

Si estás utilizando el ejecutor Cucumber.js, Allure WebdriverIO usa la jerarquía de los archivos Gherkin por defecto. El comportamiento exacto depende de la opción useCucumberStepReporter.

Jerarquía basada en la suite ​

  • addParentSuite(suiteName: string)
  • addSuite(suiteName: string)
  • addSubSuite(suiteName: string)

Asigna el nombre de la suite, como parte de la jerarquía basada en suites de Allure.

ts
import { addParentSuite, addSubSuite, addSuite } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  addParentSuite("Tests for web interface");
  addSuite("Tests for essential features");
  addSubSuite("Tests for authentication");
  // ...
});

TIP

Si estás utilizando el ejecutor Cucumber.js, Allure WebdriverIO usa la jerarquía de los archivos Gherkin por defecto. El comportamiento exacto depende de la opción useCucumberStepReporter.

Pasos de la prueba ​

  • step(name: string, body: StepBodyFunction): Promise<void>
  • addStep(title: string, { content, name, type }?: any, status?: Status)
  • startStep(title: string)
  • endStep(status?: Status)

Define los pasos de la prueba.

Existen tres formas de definir un paso.

  • Pasos Lambda

    Escribe un paso de prueba en una función lambda asincrónica y pásalo a allureReporter.step(). La función lambda debe aceptar ningún argumento o un solo argumento del tipo AllureCommandStepExecutable. Puedes crear sub-pasos dentro del paso actual llamando al método step() de este argumento.

  • Pasos No-op

    Si llamas a allureReporter.addStep(), Allure añadirá al informe un paso no-op. Esto permite un estilo de informe tipo registro dentro de una prueba o dentro de un paso más grande. Un paso no-op finaliza inmediatamente después de que comienza y no puede tener sub-pasos ni parámetros.

    El segundo argumento opcional indica el estado que se mostrará para el paso en el informe. Los valores permitidos son: Status.PASSED (el valor predeterminado), Status.FAILED, Status.BROKEN y Status.SKIPPED.

  • Pasos de bajo nivel

    Llama a allureReporter.startStep() y allureReporter.endStep() para indicar manualmente a Allure WebdriverIO cuando un paso comienza o termina. Se recomienda usar bloques try..catch para asegurar que los pasos se finalicen independientemente de las excepciones lanzadas durante su ejecución, consulta el ejemplo a continuación.

    El argumento opcional para endStep() indica el estado que se mostrará para el paso en el informe. Los valores permitidos son: Status.PASSED (el valor predeterminado), Status.FAILED, Status.BROKEN y Status.SKIPPED.

ts
import { step } from "@wdio/allure-reporter";

it("Test Authentication"), async () => {
  await step("Step 1", async (step) => {
    await step.step("Step 1.1", async () => {
      // ...
    });

    await step.step("Step 1.2", async () => {
      // ...
    });
  });

  await step("Step 2", async (step) => {
    await step.step("Step 2.1", async () => {
      // ...
    });

    await step.step("Step 2.2", async () => {
      // ...
    });
  });
});
ts
import { addStep } from "@wdio/allure-reporter";
import { Status } from "allure-js-commons";

it("Test Authentication"), async () => {
  addStep("Successful step");

  addStep("Skipped step", undefined, Status.SKIPPED);

  addStep(
    "Skipped step with attachment",
    { content: "This is attachment.", name: "file.txt", type: "text/plain" },
    Status.SKIPPED,
  );
});
ts
import { endStep, startStep } from "@wdio/allure-reporter";
import { Status } from "allure-js-commons";

it("Test Authentication"), async () => {
  startStep("Step 1");
  try {
    // ...
    endStep();
  } catch {
    endStep(Status.FAILED);
  }

  startStep("Step 2");
  try {
    // ...
    endStep();
  } catch {
    endStep(Status.FAILED);
  }
});

TIP

Por defecto, Allure WebdriverIO añade automáticamente un paso para cada comando WebDriver, con los detalles de la solicitud y los datos de la respuesta añadidos como adjuntos a nivel de paso. Esto se puede desactivar, consulta la opción de configuración disableWebdriverStepsReporting.

Pruebas parametrizadas ​

  • allureReporter.addArgument(name: string, value: string)

Dado que las pruebas en WebdriverIO, a diferencia de algunos otros marcos, se escriben como funciones anónimas, es muy fácil implementar el patrón de pruebas parametrizadas, es decir, ejecutar la misma lógica de prueba con diferentes datos de prueba. Para hacerlo, simplemente escribe la prueba dentro de un bucle y usa los parámetros de la variable tanto en su título como en su cuerpo.

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

ts
import { addArgument } from "@wdio/allure-reporter";

for (const login of ["johndoe", "[email protected]"]) {
  it(`Test Authentication as ${login}`, async () => {
    addArgument("login", login);
    // ...
  });
}

Archivos adjuntos ​

  • addAttachment(name: string, content: string | Buffer | object, type: string)

Añade content como un archivo adjunto al resultado de la prueba. El contenido puede ser una cadena de texto o un Buffer codificado en base64. Como argumento type, pasa el tipo de medio del contenido.

Puedes usar datos generados por cualquier función, no necesariamente leídos desde un archivo real.

ts
import { addAttachment } from "@wdio/allure-reporter";
import * as fs from "fs";

it("Test Authentication"), async () => {
  // ...
  addAttachment("Text", "This is the file content.", "text/plain");
  addAttachment("Screenshot", fs.readFileSync("/path/to/image.png"), "image/png");
});

TIP

Por defecto, Allure WebdriverIO incluye automáticamente en el informe todas las capturas de pantalla tomadas mediante la función saveScreenshot() de WebdriverIO. Esto se puede desactivar, consulta la opción de configuración disableWebdriverScreenshotsReporting.

Pager
Previous pageConfiguración
Next pageEmpezando
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.