Praman — Agent-First SAP UI5 Test Automation Plugin - v1.2.0
    Preparing search index...

    Praman — Agent-First SAP UI5 Test Automation Plugin - v1.2.0

    playwright-praman

    Agent-First SAP UI5 Test Automation Plugin for Playwright

    ⭐ If Praman saves you time, star the repo — it helps others find it.

    CI npm npm downloads GitHub stars License Node.js Platform Ask AI about Praman bundle size

    Praman extends Playwright with deep SAP UI5 awareness — querying controls through the UI5 runtime registry, not fragile DOM selectors, so tests survive upgrades and theme changes. Describe your business process; AI agents deliver production-ready test scripts.

    Comparing SAP test automation tools →

    Stakeholder Value
    SAP test engineers Write reliable E2E tests for any S/4HANA or Fiori app in minutes — no DOM hunting, no fragile selectors
    QA teams Replace manual SAP test scripting with AI-generated, self-healing Playwright tests purpose-built for UI5
    AI coding agents (Claude Code, Copilot, Cursor, Jules) Generate production-ready SAP tests from a business process description, no source code or specs needed
    Program leads & delivery managers Ship SAP go-lives with deployment evidence — not manual sign-off and hope
    npm install playwright-praman
    npx playwright-praman init

    init scaffolds config, installs Chromium, and sets up AI agent definitions for your IDE.

    cp .env.example .env
    # Add SAP_CLOUD_BASE_URL, SAP_CLOUD_USERNAME, SAP_CLOUD_PASSWORD

    Getting Started guide

    Describe your business process. Praman's plan → generate → heal pipeline does the rest.

    Agent What it does
    Planner Explores your live SAP system and produces a test plan
    Generator Converts the plan into typed Playwright + Praman code
    Healer Runs the test, fixes failures, repeats until green
    Interface Transport Install Best For
    Playwright MCP WebSocket (JSON-RPC) @playwright/mcp (separate) Interactive exploration, VS Code / Copilot
    Playwright CLI stdin/stdout Built into Playwright 1.59+ CI/CD, token-efficient, any terminal agent

    Agent files with a -cli suffix use Playwright CLI; files without use Playwright MCP.

    Agent & IDE Setup · MCP vs CLI · CLI Agents Guide

    import { test, expect } from 'playwright-praman';

    test('create purchase order', async ({ page, ui5, ui5Navigation }) => {
    await ui5Navigation.navigateToTile('Purchase Orders');
    await ui5.waitForUI5();

    const createBtn = await ui5.control({
    controlType: 'sap.m.Button',
    properties: { text: 'Create' },
    });
    await createBtn.press();
    await ui5.waitForUI5();
    });

    Fixtures available: ui5, ui5Navigation, sapAuth, fe, ui5.table, ui5.dialog, ui5.odata, intent, pramanAI, testData, controlTree, shellFooter, flpLocks.

    Fixture Reference · Selector Reference · Examples

    • Test any SAP UI5 control — 199 control types covered (sap.m, sap.ui.table, sap.ui.comp, sap.uxap, sap.f, sap.ui.mdc)
    • Write tests with full IntelliSense — typed control proxies, no DOM digging, no guessing selectors
    • Never write waitForTimeout() again — UI5 stability sync handles all timing automatically
    • Authenticate with any SAP system — BTP SAML, Basic Auth, Office 365, Client Certificate, Custom IDP, Manual
    • Verify your backend — mock, intercept, and assert OData V2/V4 requests with tracing reports
    • Test Fiori Elements apps without boilerplate — List Report, Object Page, and Overview Page helpers included
    • Assert SAP state natively — 10 UI5-specific matchers extend Playwright's expect()
    • Express tests in business language — Vocabulary & Intent API maps SAP field names to selectors automatically
    • Run anywhere — Windows, macOS, Linux · Node.js 22+ · TypeScript 5.x & 6.x

    Full capability reference

    Topic Link
    Full documentation praman.dev
    Getting started Getting Started
    Configuration Configuration
    Authentication Authentication
    Agent & IDE setup Agent Setup
    Fixtures reference Fixtures
    Discovery & interaction strategies Strategies
    Vocabulary system Vocabulary
    Intent API Intents
    OData tracing OData Tracing
    Error codes Errors
    Release notes Release Notes
    API reference API Docs
    LLM-friendly docs llms.txt

    Do I need SAP source code? No — Praman uses the public UI5 runtime API (sap.ui.getCore()).

    Does it work with existing Playwright tests? Yes — Praman extends Playwright. Mix ui5 fixtures with native page.click() in the same file.

    Which SAP systems are supported? S/4HANA (cloud and on-premise), BTP, Fiori Launchpad, SAPUI5, and OpenUI5 — both Fiori Elements and freestyle apps.

    Full FAQ

    • 3 production dependencies (commander, pino, zod — all MIT)
    • npm provenance attestation on every release
    • SHA-pinned GitHub Actions · CycloneDX SBOM per release

    SECURITY.md

    If Praman saves you time, please ⭐ star the repo.

    Apache-2.0