DEV Community

avin singhal
avin singhal

Posted on

Powerful Reporting with Allure + Playwright

Tired of staring at plain console logs after test execution?

Upgrade your test reporting with Allure + Playwright for visual, structured, and insightful results!

I recently integrated Allure Reports with Playwright, and the outcome is impressive—especially for both UI and API automation

✅ Get Started with These Prerequisites

Add the following devDependencies to your package.json:

"@playwright/test": "^1.51.1",
"@types/node": "^22.14.0",
"allure-commandline": "^2.33.0",
"allure-js": "^0.0.1-security",
"allure-js-commons": "^3.2.1",
"allure-playwright": "^3.2.1"

In your playwright.config.ts or playwright.config.js, include:

reporters: [
['list'],
['allure-playwright']
]

Configure Allure CLI globally if needed:
npm install -g allure-commandline --save-dev

🧪 Sample Test File with Allure Integration

./e2e/allure-test.sepc.js

const { test } = require('@playwright/test') import * as allure from "allure-js-commons"; test.describe('Allure Integration Example', () => { test('Login functionality test', async ({ page }) => { allure.owner('Automation User'); allure.epic('User Authentication'); allure.feature('Login Feature'); allure.story('Valid Login Test'); allure.severity('critical'); allure.tag('smoke', 'login'); allure.description('This test validates successful login with valid credentials'); allure.testCaseId('TC-LOGIN-001'); await allure.step('Open Login Page', async () => { await page.goto('https://example.com/login'); await expect(page).toHaveTitle(/Login/); }); await allure.step('Enter credentials', async () => { await page.fill('hashtag#username', 'testuser'); await page.fill('hashtag#password', 'Password123'); await page.click('button[type="submit"]'); }); await allure.step('Validate dashboard redirection', async () => { await expect(page).toHaveURL(/dashboard/); const screenshot = await page.screenshot(); allure.attachment('Dashboard Screenshot', screenshot, 'image/png'); }); }); }); 
Enter fullscreen mode Exit fullscreen mode

📸 Generate and View the Report

npx playwright test allure generate --single-file allure-results --clean -o ./allure-reports 
Enter fullscreen mode Exit fullscreen mode

Then open: ./allure-reports/index.html

Top comments (0)