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

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

Ten en cuenta que todas las funciones del módulo Allure también están disponibles a través del objeto que RSpec pasa a cada prueba, como el argumento t en el ejemplo siguiente.

ruby
describe 'Test my website' do
  it 'test authentication' do |t|
    t.description_html 'This test attempts to log into the website using a login and a password.'
    # ...
  end
end

Metadatos ​

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

Description ​

  • Allure::description_html: (String html)

Establece la descripción de la prueba.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.description_html 'This test attempts to log into the website using a login and a password.'
    # ...
  end
end

Owner ​

Establece el propietario de la prueba.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.label "owner", 'John Doe'
    # ...
  end
end

Tag ​

  • Allure::tag: (String tag)

Establece los tags de la prueba.

Hay tres formas de agregar una etiqueta a tu prueba.

  • Desde el cuerpo de la prueba, llama a la función Allure.tag().

  • Agrega un símbolo a los metadatos de RSpec. Allure RSpec añadirá una etiqueta usando el nombre del símbolo, a menos que sea una de las etiquetas ignoradas.

  • Agrega un par clave-valor a los metadatos de RSpec. Allure RSpec añadirá una etiqueta usando el valor, a menos que la clave sea una de las etiquetas ignoradas o el valor sea falso. Esto es conveniente cuando declaras múltiples pruebas en un bucle y deseas agregar o no agregar una etiqueta en función de una condición, como en el ejemplo siguiente.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.tag 'Web interface'
    Allure.tag 'Authentication'
    # ...
  end
end
ruby
describe 'Test my website' do
  it 'test authentication', :'Web interface', :Authentication do
    # ...
  end
end
ruby
describe 'Test my website' do
  auth_data = [
    ['johndoe', false],
    ['[email protected]', true],
  ]
  auth_data.each do |login, using_email|
    it "test authentication as #{login}", 'Using email': using_email do
      # ...
    end
  end
end

Severity ​

  • severity: String

Establece la severidad de la prueba.

Por defecto, Allure RSpec usará el valor bajo la clave severity en los metadatos de RSpec. La clave se puede cambiar en la configuración.

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

ruby
describe 'Test my website' do
  it 'test authentication', severity: 'critical' do
    # ...
  end
end

Label ​

  • Allure::label: (String name, String value)

Establece una etiqueta arbitraria para la prueba. Esta es la implementación subyacente para 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 Allure.label() varias veces para crear un arreglo de valores bajo el nombre dado.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.label 'my custom label', 'value'
    # ...
  end
end

Allure ID (Allure TestOps) ​

  • allure_id: String

Establece el ID de la prueba.

Este ID es utilizado por la función de “plan de pruebas” en Allure TestOps para seleccionar qué pruebas ejecutar. Allure RSpec no exporta el ID a los resultados de las pruebas.

ruby
describe 'Test my website' do
  it 'test authentication', allure_id: '123' do
    # ...
  end
end

Link ​

  • issue: String
  • tms: String
  • Allure::add_link: (url: String, name: String?, type: String?)
  • Allure::issue: (String name, String url)
  • Allure::tms: (String name, String url)

Agrega un enlace relacionado con la prueba.

En la API de ejecución, puedes hacerlo llamando a la función Allure.add_link(). El tipo afecta el icono que se muestra junto al enlace en el informe de la prueba. Para mayor comodidad, Allure proporciona dos funciones abreviadas con tipos de enlace preseleccionados: Allure.issue() y Allure.tms().

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.add_link url: 'https://dev.example.com/', name: 'Website'
    Allure.issue 'AUTH-123', 'https://issues.example.com/AUTH-123'
    Allure.tms 'TMS-456', 'https://tms.example.com/TMS-456'
    # ...
  end
end

Alternativamente, puedes agregar enlaces de problemas y enlaces de TMS a través de identificadores cortos en los metadatos de RSpec. Para habilitar esto, necesitas especificar los patrones de enlace en la configuración. Allure RSpec usará los patrones para procesar los valores bajo claves específicas (por defecto issue y tms respectivamente, pero pueden ser cambiados en la configuración).

Suponiendo los patrones de enlace https://issues.example.org/{} y https://tms.example.org/{}, la prueba en el ejemplo siguiente tendrá un enlace de problema a https://issues.example.org/AUTH-123 y un enlace de TMS a https://tms.example.org/TMS-456.

ruby
describe 'Test my website' do
  it 'test authentication', issue: 'AUTH-123', tms: 'TMS-456' do
    # ...
  end
end

Si necesitas especificar más de un enlace de problema o más de un enlace de TMS para la misma prueba, utiliza claves con sufijos numéricos después de un guion bajo, por ejemplo: issue_1, issue_2, tms_1, tms_2, etc. Allure RSpec procesará cada uno de los valores como de costumbre, ignorando los sufijos de las claves.

ruby
describe 'Test my website' do
  it 'test authentication', issue_1: 'AUTH-123', issue_2: 'AUTH-124' do
    # ...
  end
end

Jerarquía basada en el comportamiento ​

  • epic: String
  • feature: String
  • story: String
  • Allure::epic: (String epic)
  • Allure::feature: (String feature)
  • Allure::story: (String story)

Asigna nombres de épicas, funcionalidades o historias de usuario a una prueba, como parte de la jerarquía basada en comportamiento de Allure.

Puedes hacerlo mediante las funciones en la API de ejecución o especificando los metadatos de RSpec bajo ciertas claves. Las claves por defecto son epic, feature y story, pero se pueden cambiar en la configuración.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.epic 'Web interface'
    Allure.feature 'Essential features'
    Allure.story 'Authentication'
    # ...
  end
end
ruby
describe 'Test my website' do
  it 'test authentication',
     epic: 'Web interface',
     feature: 'Essential features',
     story: 'Authentication' do
    # ...
  end
end

Jerarquía basada en la suite ​

  • Allure::suite: (String name)

Asigna los nombres de suite principal, suite o sub-suite a una prueba, como parte de la jerarquía basada en suites de Allure.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.label 'parentSuite' 'Web interface'
    Allure.suite 'Essential features'
    Allure.label 'subSuite', 'Authentication'
    # ...
  end
end

Pasos de prueba ​

  • AllureStepAnnotation::step: (name: String, status: Status?)
  • Allure::run_step: (String name) { (*any) -> untyped }
  • Allure::step: (name: String, status: Status) { (*any) -> untyped }

Define pasos de prueba.

Hay tres formas de definir un paso.

  • Pasos anotados

    En una clase que extienda AllureStepAnnotation, define un método que contenga un paso de prueba y agrega la anotación step a este, con un argumento opcional name (por defecto el nombre del método). Cada vez que el método sea llamado durante la ejecución de la prueba, se creará un nuevo paso para el informe de la prueba. Si el método llama a otra función que también tiene el atributo step, Allure Report creará un sub-paso dentro del paso actual.

  • Pasos basados en bloques

    Escribe un paso de prueba dentro de un bloque para la función Allure.run_step(). Si el bloque devuelve un valor, Allure.run_step() lo devolverá sin modificación, y no afectará el informe.

  • Pasos no operativos (no-op)

    Si llamas a la función Allure.step(), Allure agregará un paso no operativo al informe. Esto permite un estilo de reporte tipo log dentro de una prueba o dentro de un paso más grande. Un paso no operativo termina inmediatamente después de que comienza y no puede tener sub-pasos.

    El segundo argumento opcional indica el estado que se mostrará para el paso en el informe. Los valores permitidos son: :passed (el valor por defecto), :failed, :broken, :skipped, y :unknown.

ruby
describe 'Test my website' do
  it 'test authentication' do
    Steps.step_1
    Steps.step_2
  end
end

class Steps
  extend AllureStepAnnotation

  step 'Step 1'
  def self.step_1
    step_1_1
    step_1_2
  end

  step 'Step 1.1'
  def self.step_1_1
    # ...
  end

  step 'Step 1.2'
  def self.step_1_2
    # ...
  end

  step 'Step 2'
  def self.step_2
    step_2_1
    step_2_2
  end

  step 'Step 2.1'
  def self.step_2_1
    # ...
  end

  step 'Step 2.2'
  def self.step_2_2
    # ...
  end
end
ruby
describe 'Test my website' do
  it 'test authentication' do
    Allure.run_step 'Step 1' do

      # ...
      Allure.step name: 'Step 1.1', status: :passed

      # ...
      Allure.step name: 'Step 1.2', status: :passed
    end

    Allure.run_step 'Step 2' do

      # ...
      Allure.step name: 'Step 2.1', status: :passed

      # ...
      Allure.step name: 'Step 2.2', status: :passed
    end
  end
end

Pruebas parametrizadas ​

  • Allure::parameter: (String name, String value)

Con Allure RSpec, 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, solo escribe la prueba dentro de un bucle y usa los parámetros variables tanto en su título como en su cuerpo.

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

ruby
describe 'Test my website' do
  auth_data = [
    ['johndoe', 'qwerty'],
    ['[email protected]', 'qwerty'],
  ]
  auth_data.each do |login, password|
    it "Test authentication as '#{login}'" do
      Allure.parameter 'Login', login
      Allure.parameter 'Password', password
      # ...
    end
  end
end

Attachments ​

  • Allure::add_attachment: (name: String, source: File | String, type: String, test_case: bool?)

Agrega un archivo adjunto con un name dado.

El contenido se pasa en el argumento source y puede ser una cadena de texto o un Archivo.

Para asegurar que el navegador web del lector muestre correctamente los archivos adjuntos, pasa el tipo de medio adecuado del contenido como type. La clase Allure::ContentType contiene algunos tipos de medios populares, o puedes usar una cadena personalizada, siempre que el navegador web lo entienda al ver el informe de la prueba.

Cuando estás dentro de un paso de prueba, la función agrega el archivo adjunto al paso actual por defecto. Para agregarlo al resultado de la prueba completa, pasa true al argumento opcional test_case.

ruby
describe 'Test my website' do
  it 'test authentication' do
    # ...
    Allure.add_attachment name: 'Screenshot',
                          source: File.new('/path/to/image.png'),
                          type: Allure::ContentType::PNG
    Allure.add_attachment name: 'Data',
                          source: 'This is the file content.',
                          type: Allure::ContentType::TXT
  end
end
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.