Skip to main content

SAP Test Automation Features — Playwright Plugin for S/4HANA & Fiori

From AI-powered test generation to enterprise observability — built for teams migrating to S/4HANA.

21
Fixtures
199
Typed Interfaces
4,092
Methods
199
UI5 Control Types
8
SAP Libraries
6
Sub-Path Exports
🤖

Agent-First Architecture

SKILL.md entry points let any AI agent — Copilot, Claude, Jules — discover capabilities, generate tests, and verify compliance autonomously. Agents connect via Playwright MCP or Playwright CLI.

🎯

SAP UI5 Native Control Access

ui5.control() with auto-retry, self-healing, and 3-tier API resolution. LTS 1.108, 1.120, 1.136. Uses UI5 control APIs, not brittle DOM selectors.

🔧

21 Fixtures, 199 Interfaces, 4,092 Methods

199 UI5 control types across 8 libraries — sap.m, sap.ui.table, sap.ui.comp, sap.uxap, sap.f, and more. Just destructure and go.

Playwright Native

Extends @playwright/test directly. Parallel execution, auto-wait, trace viewer, UI mode. Web-first assertions with zero compromise.

📊

Enterprise Observability

OpenTelemetry tracing with Azure and AWS. Role-based quality reports, pino structured logging, compliance reporters, defect video and logs.

🔒

SAP Authentication & FLP

Built-in SAP auth flows, Fiori Launchpad navigation, SM12 lock management. Multi-system support for ECC and S/4HANA.

📦

OData V2 & V4 Support

Full OData CRUD operations, batch processing, deep entity creation. Mock server support for hermetic testing.

🏗

Fiori Elements Helpers

List Report, Object Page, Analytical List Page. SmartTable, SmartFilterBar, SmartField — all typed and proxied.

🌍

Cross-Platform

Windows, macOS, Linux. CI runs on 3-OS matrix. node:path, node:fs/promises — no platform assumptions.

📝

Structured Error Intelligence

Every error includes code, attempted action, retryable flag, and suggestions array. AI agents can self-heal from failures.

Dual ESM + CJS Output

tsup-built with conditional exports. Validated by attw. Works in any Node.js environment without configuration.

🧪

Agentic Test Generation

Plan, generate, and heal tests with Praman SAP agents. Available as MCP agents (JSON-RPC) and Playwright CLI agents (stdin/stdout). Seed-based auth, live browser validation, 7 mandatory compliance rules.

Azure Playwright Workspaces

Run SAP E2E tests at scale with cloud-hosted browsers. GitHub Actions + Azure = fully automated pipeline. No local machine required.

Feature Parity Comparison

Comprehensive comparison of SAP UI5 test automation capabilities. Playwright Native retains advantages in speed, ecosystem, and visual testing.

FeaturePlaywright NativePlaywright + Praman
General Test Automation
Modern async/await syntax
TypeScript support✓ Native, strict✓ Strict + branded types
Parallel execution✓ Workers✓ Workers
Auto-wait for elements✓ Web-first assertions✓ Web-first + UI5 stability
Visual regression testing✓ Native screenshots✓ Native (Playwright)
Network interception✓ Full page.route()✓ Full + analytics blocking
Multi-browser support✓ Chrome / Firefox / WebKit✓ Chrome / Firefox / WebKit
Control Discovery & Interaction
UI5 control selector engine✓ ui5= engine, 4-tier strategy
Discovery strategy depth✓ Cache → ID → RecordReplay → registry
Control result caching✓ LRU 200 entries, 5 s TTL, automatic
Typed UI5 control interfaces✓ 199 controls, 4,092 methods
SmartField / MDC inner control✓ SmartField, SmartFilterBar, mdc.Field, mdc.ValueHelp
Interaction strategy selection✓ UI5-native / DOM-first / OPA5
OPA5-standard interaction✓ RecordReplay API (selectable)
Direct UI5 method access✗ page.evaluate only✓ Typed proxy + exec()
Method safety blacklist✓ 71 static + 2 dynamic rules
Control metadata introspection✓ getControlMetadata(), retrieveMembers()
Auto-wait for UI5 stability✓ 3-tier: bootstrap → stable → DOM settle
Dialog auto-discovery✓ 10 dialog types via sap-ui-static
UI5-specific custom assertions✓ 10 matchers: ValueState, Binding, RowCount…
Table variants supported✓ 6 variants incl. SmartTable, mdc.Table
UI5 control tree / page discovery✓ discoverPage() → PageContext
UI5 bridge injection
UI5 version compatibility✓ 1.71+
SAP Authentication
SAP Cloud (SAML / OAuth)✗ Manual✓ Built-in, 6 strategies
SAP On-Premise (NetWeaver)✗ Manual✓ Basic auth, auto-detect
Session persistence✓ storageState✓ storageState + SAP tokens
Auth strategy auto-detection✓ detectSystemType()
Custom auth strategy plug-in✓ registerAuthStrategy()
Fiori Launchpad
Tile navigation✗ Manual DOM✓ navigateToTile() by title
Intent-based navigation✓ navigateToIntent() with params
Shell search & open app✓ searchAndOpenApp()
FLP user locale / settings✓ getLanguage(), getDateFormat()…
SM12 lock management✓ getLockEntries(), auto-cleanup
BTP WorkZone frame support✓ btpWorkZone fixture
OData / Backend Testing
OData CRUD operations✗ fetch / axios manual✓ queryEntities, create, update, delete
Query params ($filter…)✓ $filter, $select, $expand, $orderby
CSRF token + ETag handling✓ Automatic
Model-level data access✓ getModelData(), waitForODataLoad()
OData trace reporter✓ Per-entity-set call analytics
AI & Test Intelligence
AI-first fixture design✓ Capability & recipe registries, SKILL.md
SAP domain intent APIs✓ 5 domains: procurement, sales, finance, mfg, master data
SAP vocabulary service✓ 6 domains, fuzzy match, field → selector
Agentic test generation✓ generateTest(), checkpoint, suggestActions()
LLM provider abstraction✓ Claude / OpenAI / Azure OpenAI
Fiori Elements test helpers✓ listReport, objectPage, FE test library
Compliance reporter✓ Step categorisation, compliance %
LLM-friendly docs (llms.txt)✓ llmstxt.org standard, 4 topic files
Developer Experience
Setup CLI✓ npx playwright-praman init
Doctor / diagnostics CLI✓ npx playwright-praman doctor
MCP agents✓ praman-sap-planner, generator, healer (MCP)
Playwright CLI agents✓ praman-sap-planner-cli, generator-cli, healer-cli
Structured error codes⚠ JS Error only✓ 14 classes, 67 codes, suggestions[]
API documentation✓ Full docs✓ TSDoc + API Extractor
Playwright fixture pattern✓ test.extend()✓ 17 fixtures, 5 auto-fixtures
Cloud & CI/CD
Azure Playwright Workspaces✓ Full support✓ Full support — all features work remotely
Cloud-hosted browsers✓ connectOptions✓ Transparent — fixtures, proxy, bridge all work
GitHub Actions CI✓ Standard✓ Pre-built workflow + Azure integration
Zero local machine pipeline✓ With GitHub Actions✓ GitHub + Azure = fully automated SAP testing
Scale to 100 parallel workers✓ Azure Workspaces limit✓ Per-app parallelism for SAP tests
SAP on-prem via exposeNetwork✗ Manual proxy config✓ Built-in exposeNetwork patterns
Performance
Test execution speed⚡ Fast — native browser⚡ Fast — Playwright-based
Browser startup time⚡ Fast⚡ Fast
Parallel execution efficiency✓ High — workers✓ High — workers