Configuración de Allure AVA
El comportamiento de la integración Allure AVA se puede configurar pasando un objeto de opciones a installAllure() en tu archivo de configuración de AVA. Por ejemplo:
// ava.config.mjs
import { installAllure } from "allure-ava";
import { Status } from "allure-js-commons";
import * as os from "node:os";
await installAllure({
resultsDir: "allure-results",
links: {
issue: {
nameTemplate: "Issue #%s",
urlTemplate: "https://issues.example.com/%s",
},
tms: {
nameTemplate: "TMS #%s",
urlTemplate: "https://tms.example.com/%s",
},
jira: {
urlTemplate: "https://jira.example.com/browse/%s",
},
},
categories: [
{
name: "Assertion failures",
matchedStatuses: [Status.FAILED],
},
],
environmentInfo: {
os_platform: os.platform(),
os_release: os.release(),
os_version: os.version(),
node_version: process.version,
},
globalLabels: {
layer: "api",
},
});
export default {};resultsDir
Ruta al directorio donde Allure AVA guardará los resultados de prueba, consulta Cómo funciona. Si el directorio no existe, se creará. El valor predeterminado es allure-results.
links
Un mapeo de plantillas que se pueden usar para construir URLs completas a partir de identificadores cortos.
Para cada tipo de enlace (consulta allure.link()), puedes especificar lo siguiente:
nameTemplate— una plantilla para generar el nombre del enlace cuando no se proporciona.urlTemplate— una plantilla para generar la dirección completa del enlace a partir de un identificador corto.
Cada plantilla puede ser una cadena que contiene %s en la posición donde debe ir el identificador, o una función que acepta el identificador y devuelve la cadena resultante.
Por ejemplo, con la configuración anterior, await allure.issue("123") producirá un enlace con el nombre Issue #123 y la dirección https://issues.example.com/123. Allure mostrará el enlace con el icono correspondiente para el tipo issue.
categories
Define categorías personalizadas que se usarán para distinguir los resultados de prueba según sus errores; consulta Categorías.
Esta opción es un array, donde cada elemento es un objeto que representa una categoría personalizada. Los objetos pueden tener las siguientes propiedades:
name— el nombre de la categoría.description— la descripción de la categoría, en texto plano.descriptionHtml— la descripción de la categoría, en formato HTML.messageRegex— una expresión regular que debe coincidir con el mensaje del resultado de prueba.traceRegex— una expresión regular que debe coincidir con el trace del resultado de prueba.matchedStatuses— un array de estados que debe tener el resultado de prueba.flaky— si el resultado de prueba debe marcarse como inestable.
WARNING
Esta opción funciona con Allure Report 2, que lee el archivo categories.json que Allure AVA escribe en el directorio de resultados. Allure Report 3 ignora ese archivo — define las categorías en el archivo de configuración de Allure Report 3 en su lugar.
environmentInfo
Pares clave-valor que se mostrarán en la página principal del reporte, consulta Información de entorno.
globalLabels
Etiquetas aplicadas a cada resultado de prueba en la ejecución. Es útil para etiquetar todos los resultados con una capa, equipo o identificador de entorno sin repetirlo en cada prueba.
Se pueden proporcionar como un array de objetos etiqueta { name, value }:
await installAllure({
globalLabels: [
{ name: "layer", value: "api" },
{ name: "team", value: "backend" },
],
});O como un objeto simple que mapea nombres de etiqueta a valores. Un nombre puede mapear a una cadena o a un array de cadenas:
await installAllure({
globalLabels: {
layer: "api",
team: "backend",
},
});