Official agent skill

Sap Fiori Opa5 Test Development

by SAP in SAP/open-ux-tools

A skill your agent uses when writing, fixing, extending, or reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library) or OData V2…

OfficialApache-2.0Auto-check passedTesting & QA

Install Sap Fiori Opa5 Test Development

skills CLI
$ npx skills add SAP/open-ux-tools --skill sap-fiori-opa5-test-development -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install SAP/open-ux-tools sap-fiori-opa5-test-development --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/SAP/open-ux-tools.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins-coding-agents/fiori/skills/sap-fiori-opa5-test-development .claude/skills/sap-fiori-opa5-test-development && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sap-fiori-opa5-test-development
GitHub stars
158
Token cost
~3.6k tokens
SKILL.md length
1,497 words
Files
8 (incl. references)
Skills in repo
9
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when writing, fixing, extending, or reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library) or OData V2…

  • Works in 3 steps: Locate the Project Root → Detect OData Version → Follow the Matching Guide
  • Reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library)
  • SKILL.md covers Prerequisites, Step 1: Locate the Project Root, Step 2: Detect OData Version and Step 3: Follow the Matching…, plus 6 more sections
  • Calls npm and npx; reaches docs.oasis-open.org and schemas.microsoft.com

What it does

Sap Fiori Opa5 Test Development is an agent skill from SAP/open-ux-tools, published by the product's own GitHub organization. Use this skill when writing, fixing, extending, or reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library) or OData V2 (fioriElementsTestLibrary). Triggers on any request involving OPA5 journeys, page objects, JourneyRunner setup, test structure, mock data, or debugging test failures in a SAP Fiori Elements project generated by SAP Fiori tools. Use even when the user says "write integration tests" or "add an OPA journey" without specifying the…

Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including reference files (for example `references/fiori-elements-v2-test-library.md`, `references/v2-instructions.md` and `references/v4-custom-selectors.md`).

It sits in Testing & QA, covering Integration testing and Failing and flaky tests. It works with SAP. The repository describes itself as: Enable community collaboration to jointly promote and facilitate best in class tooling capabilities. The licence is Apache-2.0.

When your agent uses it

  • Reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library)
  • OData V2 (fioriElementsTestLibrary)
  • Any request involving OPA5 journeys
  • JourneyRunner setup

Example prompts

  • “write integration tests”
  • “add an OPA journey”
  • “/sap-fiori-opa5-test-development”

Requirements

  • Node.js

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Locate the Project Root
  2. Detect OData Version
  3. Follow the Matching Guide

What it can do on your machine

Read from SKILL.md and the folder at commit ddeddbe. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • docs.oasis-open.org
    • schemas.microsoft.com
    • ui5.sap.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sap Fiori Opa5 Test Development loads about 3.6k tokens when it runs, and up to ~26k if it reads all its reference files. Until then it costs about 162 tokens; SKILL.md has 1,497 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~162
When it runs · the whole SKILL.md, loaded when a task matches
~3.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~26k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from SAP/open-ux-tools at commit ddeddbe, republished under its Apache-2.0 licence (© SAP). 1,497 words, ~3,555 tokens.

Download SKILL.mdSave it as .claude/skills/sap-fiori-opa5-test-development/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.
name
sap-fiori-opa5-test-development
description
Use this skill when writing, fixing, extending, or reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library) or OData V2 (fioriElementsTestLibrary). Triggers on any request involving OPA5 journeys, page objects, JourneyRunner setup, test structure, mock data, or debugging test failures in a SAP Fiori Elements project generated by SAP Fiori tools. Use even when the user says "write integration tests" or "add an OPA journey" without specifying the library, as long as the project context is SAP Fiori Elements. Not applicable to freestyle UI5 apps.
metadata.author
sap-fiori-tools
metadata.version
1.0.4

SAP Fiori OPA5 Development Skill

A guide for writing, fixing, and extending OPA5 integration tests for SAP Fiori Elements applications. Covers both OData V4 (sap.fe.test) and OData V2 (fioriElementsTestLibrary).

Not applicable to freestyle UI5 applications - for those, suggest the ui5-best-practices-opa5 skill from the UI5 Plugins for Coding Agents ui5.


Prerequisites

This skill requires an existing SAP Fiori Elements application generated by SAP Fiori tools with a test folder present (e.g. at webapp/test). If it is missing, follow the version-specific guide after detecting the OData version.


Step 1: Locate the Project Root

When the user provides a project name or ID (e.g. fin.test.rap.lr3) instead of a file path:

  1. Search for manifest.json files under common project roots (e.g. webapp/manifest.json).
  2. Match the "id" field in sap.app to the given name, or look for a folder whose name contains the given ID.
  3. Once found, treat the folder containing webapp/manifest.json as the project root for all subsequent steps.

Step 2: Detect OData Version

Before writing any test code, determine whether the app is OData V4 or V2. The two test libraries are completely different and must never be mixed.

Primary check: manifest.json
What you findVersionTest library
"sap.fe.templates" key inside sap.ui5.dependencies.libsV4sap.fe.test
"sap.ui.generic.app" as a root keyV2fioriElementsTestLibrary
Fallback check: metadata.xml

If manifest.json is inconclusive, check the <edmx:Edmx> root element in the service metadata file (typically at webapp/localService/mainService/metadata.xml, or wherever metadataPath points in ui5-mock.yaml):

Attribute valueVersion
xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" or Version="4.0"V4
xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx" or Version="1.0"V2

These attributes appear on line 1 or 2 of the file.

If neither signal is present, ask the user to confirm the OData version before proceeding.


Step 3: Follow the Matching Guide

Once the version is confirmed:

  1. Read the shared sections further below ("Test Endpoint and Running Tests", "Mock Server") - they apply to both V4 and V2.
  2. Then read the version-specific guide for all test library decisions:
    • OData V4 - read references/v4-instructions.md
    • OData V2 - read references/v2-instructions.md

Adding a New Journey

When the user asks to add an additional journey (not just a new opaTest inside an existing journey):

  1. Find the test root - search for files matching *Journey.js, *Journey.ts, *Journey.gen.js, or *Journey.gen.ts in the project. The folder containing those files is the integration test root. These files typically live in a folder named integration within the test directory, e.g. webapp/test/integration.
  2. Understand the wiring - read the existing journey files and any entry point files to understand how journeys are registered. Three setups are possible:
    • Virtual endpoint (V4) - no registration needed; the middleware picks up any file matching the configured pattern (default: ends in Journey.js or Journey.ts)
    • Physical entry point (V4) - add the new journey's module path to the sap.ui.require array in OpaTests.qunit.js
    • Custom wiring (e.g. S/4 apps with AllJourneys.js or AllJourneys.json) - follow the existing pattern
  3. Create the journey file following the same naming pattern as existing journeys.
  4. Confirm to the user which file was created and how it is registered (or that registration is automatic).

General Anti-Patterns (V4 and V2)

These apply regardless of OData version or test library.

Never invent method names. Only use methods that are confirmed to exist in the test library. If a method is not shown in the quick-reference patterns, do NOT guess or construct a name - look it up first:

  • V4: check references/v4-standard-patterns.md for common patterns. If the method is not there, check references/v4-custom-selectors.md for custom selector patterns. If still not found, read references/v4-sap-fe-test-api-guide.md and consult the official sap.fe.test API documentation it points to. A method that "sounds right" is not sufficient — it must be confirmed to exist.
  • V2: check references/fiori-elements-v2-test-library.md which contains the full API reference for all V2 page objects.

Invented methods fail silently with a "not a function" runtime error that is hard to diagnose.

Every opaTest must have at least one Then assertion. A test with only Given/When steps reports 0 assertions and fails silently.

javascript
// ❌ No Then = no assertions, test fails
opaTest("Click button", function(Given, When, Then) {
    When.onThePage.iClickButton();
});

// ✅ Always end with at least one Then
opaTest("Click button", function(Given, When, Then) {
    When.onThePage.iClickButton();
    Then.onThePage.iSeeThisPage();
});

OData property names are case-sensitive - always match the exact casing from metadata.xml. Wrong casing causes a timeout, not an error message.

OPA5 state carries over between opaTest blocks within a journey. Tests run sequentially and share the same browser session - do not assume the app is in a clean state at the start of each opaTest. Always navigate and assert explicitly rather than relying on state left by the previous test block.

The pages map key in JourneyRunner (V4) must exactly match the accessor name used in journeys. A mismatch causes a silent runtime error - the page object is simply undefined when the journey tries to call it. (V2 registers page objects globally via module loading and has no pages map.)

javascript
// ❌ Wrong - key is "onTheList" but journey calls "onTheListReport"
pages: { onTheList: ListReportPage }
// journey: When.onTheListReport.onTable()... → undefined

// ✅ Fixed - key matches accessor name exactly
pages: { onTheListReport: ListReportPage }

Keep journeys focused - split at around 10 opaTest blocks. Large journey files are slow to debug and hard to maintain. One journey file per feature or user flow is a good rule of thumb. Do not add tests for standard Fiori Elements behavior already covered by the test library itself.

Teardown method name differs by version. Always call teardown on Given, never on a page object:

  • V4: Given.iTearDownMyApp() (capital D - overridden in sap.fe.test.BaseArrangements)
  • V2: Given.iTeardownMyApp() (lowercase d - base Opa5 method)

QUnit requires assertions to validate tests. Teardown is not an assertion - always assert something before tearing down.

❌ Incorrect - teardown with no prior assertion:

javascript
// V4
opaTest("Should clean up", function(Given, When, Then) {
    Given.iTearDownMyApp();
});
// V2
opaTest("Should clean up", function(Given, When, Then) {
    Given.iTeardownMyApp();
});

❌ Incorrect - teardown chained on a page object instead of Given:

javascript
// V4
opaTest("Should assert state and clean up", function(Given, When, Then) {
    Then.onTheListPage.iSeeThisPage()
        .and.onTheListPage.iTearDownMyApp();
});

✅ Correct:

javascript
// V4
opaTest("Should assert state and clean up", function(Given, When, Then) {
    Then.onTheListPage.iSeeThisPage();  // assertion first
    Given.iTearDownMyApp();             // teardown on Given, separate step
});
// V2
opaTest("Should assert state and clean up", function(Given, When, Then) {
    Then.onTheGenericListReport.theResultListIsVisible(); // assertion first
    Given.iTeardownMyApp();                               // teardown on Given, separate step
});

Test Endpoint and Running Tests

These apply to both V4 and V2 projects.

Show full SKILL.md (605 more words)Show less
Virtual Test Endpoint (fiori-tools-preview or preview-middleware)

When @sap/ux-ui5-tooling or @sap-ux/preview-middleware is configured with a test block in ui5.yaml or ui5-mock.yaml, the HTML and JS entry point files are generated on the fly - no physical opaTests.qunit.html or OpaTests.qunit.js are needed on disk.

Example ui5-mock.yaml configuration:

yaml
server:
   customMiddleware:
      - name: fiori-tools-preview
        configuration:
           test:
              - framework: OPA5
                path: /test/opaTests.qunit.html # default, omit if unchanged
                init: /test/opaTests.qunit.js # default, omit if unchanged
                pattern: /test/**/*Journey{,.gen}.{js,ts} # default, omit if unchanged

If a physical file already exists at the configured path, the middleware serves that instead (with a warning). When working in a virtual-endpoint project, do not create opaTests.qunit.html or OpaTests.qunit.js manually - new journey files are picked up automatically as long as their filename matches the configured pattern.

Physical Files (classic setup)

Without the virtual endpoint, the full structure is present on disk:

webapp/test/integration/
├── opaTests.qunit.html     <- test suite entry point (opened in browser)
├── OpaTests.qunit.js       <- imports journeys and calls QUnit.start()
├── FirstJourney.js
└── pages/
    └── ...

Registering a new journey requires adding its module path to the sap.ui.require array in OpaTests.qunit.js.

Running Tests

Via npm script:

bash
npm run int-test

Check package.json for the exact script name. This runs fiori run --config ./ui5-mock.yaml --open 'test/integration/opaTests.qunit.html'.

Manually (CAP-based apps):

bash
npm start  # or: cds watch

Then open in a browser: http://localhost:<port>/<app-name>/webapp/test/integration/opaTests.qunit.html


Mock Server

These apply to both V4 and V2 projects.

Runs in the UI5 tooling layer - no backend process needed - making it the recommended choice for OPA5 tests. Supports both V4 and V2 apps.

Set it up with:

bash
npx --yes @sap-ux/create@latest add mockserver-config

Two data modes - choose based on what your tests assert:

ModeConfigUse when
Static mock datagenerateMockData: falseTests assert specific values (exact counts, field contents, IDs). JSON files in mockdataPath (default: ./webapp/localService/mainService/data/). Deterministic across runs.
Dynamic mock datagenerateMockData: trueTests only assert structure (a field is visible, a table has rows). No JSON files to maintain, but you cannot assert exact values.

If a journey deletes a record (e.g., via iExecuteDelete()), restart the server before re-running to restore the data.

sap.ui.core.util.MockServer (older V2 apps)

Older V2 apps generated by earlier tooling may use the UI5 framework's built-in mock server instead. It is configured via localService/mockserver.js and runs in the browser rather than the tooling layer. See the UI5 docs: https://ui5.sap.com/#/topic/3a9728ec31f94ca18a7d543ce419d85d

CAP backend

For CAP-based projects, cds watch / npm start can serve as the data backend. Reserve this for dedicated integration or end-to-end suites that need to test CAP logic - prefer the mockserver for OPA5 tests.


Debugging Failing Tests

These apply to both V4 and V2 projects.

When a test fails, enable pause-on-failure so the app stays live in the browser at the point of failure for direct inspection. Add this line to your test entry point before the runner or any Opa5.extendConfig call:

javascript
sap.ui.test.qunitPause.pauseRule = "assert,timeout";

When the test pauses, inspect the live app in the browser to see what the UI actually shows vs. what the test expected. Remove this line once all journeys pass.

For UI5 version 1.147 and above, the TestRecorder tool (sap.ui.testrecorder library) can be added to the app temporarily to inspect the live control tree and generate reliable OPA5 snippets for non-trivial selectors. Remove the library again once done.

Flaky tests on CI - the default OPA5 timeout (15s) is often too low for CI environments. Increase it to 60 in your runner config (opaConfig.timeout for V4, Opa5.extendConfig({ timeout: 60 }) for V2).


Reference Files

FileWhen to read
references/v4-instructions.mdV4 app: test structure, JourneyRunner, page objects, anti-patterns, debugging, patterns and fixes by UI area
references/v4-journeyrunner.mdV4: full JourneyRunner config reference, tile name lookup, portable journey pattern
references/v4-sap-fe-test-api-guide.mdV4: how to navigate the sap.fe.test API docs, naming conventions, identifier patterns
references/v4-standard-patterns.mdV4: quick-reference example catalogue by UI area (App Startup, FilterBar, Table, Header, Form, Footer, Dialog, Section, Value Help, Chart, Shell)
references/v4-custom-selectors.mdV4: custom selectors (last resort), OpaBuilder, CustomFilterField IDs, ComboBox, suffix pitfalls
references/v2-instructions.mdV2 app: setup, page objects, V2 gotchas
references/fiori-elements-v2-test-library.mdV2: full API reference for List Report, Object Page, ALP, and FCL page objects — method signatures, common pitfalls, complete example

© SAP, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 7 other files (references) in plugins-coding-agents/fiori/skills/sap-fiori-opa5-test-development of SAP/open-ux-tools.

  • SKILL.md
  • references/fiori-elements-v2-test-library.md
  • references/v2-instructions.md
  • references/v4-custom-selectors.md
  • references/v4-instructions.md
  • references/v4-journeyrunner.md
  • references/v4-sap-fe-test-api-guide.md
  • references/v4-standard-patterns.md

Open the folder on GitHubat commit ddeddbe

Compare with similar skills

Sap Fiori Opa5 Test Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sap Fiori Opa5 Test Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sap Fiori Opa5 Test Development this skillSAP/open-ux-tools158—~3.6kAutomated safety check: PassApache-2.0
Frappe Testing UnitImpertio-Studio/Frappe_Claude_Skill_Package189—~3kAutomated safety check: PassMIT
Designing TestsCloudAI-X/claude-workflow-v21.4k1 repos~1.5kAutomated safety check: PassMIT
CI Triagecanton-network/splice117—~1.4kAutomated safety check: PassApache-2.0
Fix Broken Datadog Provider TestsDataDog/terraform-provider-datadog468—~2.4kAutomated safety check: NotesMPL-2.0
Grails Test Fixerapache/grails-core2.9k—~1.1kAutomated safety check: PassApache-2.0

Similar skills

  • Frappe Testing Unit

    Impertio-Studio/Frappe_Claude_Skill_Package

    A skill your agent uses when writing unit tests, integration tests, creating test fixtures, or running tests with bench run-tests.

    189 GitHub stars~3k tokensUpdated 24 days ago
    Testing & QAAuto-check passed
  • Designing Tests

    CloudAI-X/claude-workflow-v2

    Designs and implements testing strategies for any codebase. An agent skill from CloudAI-X/claude-workflow-v2.

    1.4k GitHub starsUsed in 1 repo~1.5k tokens
    Testing & QAAuto-check passed
  • CI Triage

    canton-network/splice

    Triage a failed splice GitHub Actions job (cn-test-failures ref) into a reproducible evidence packet - fetch job log and artifact, isolate the flagged lines, check the known flake families for…

    117 GitHub stars~1.4k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Fix Broken Datadog Provider Tests

    DataDog/terraform-provider-datadog

    Official

    Runs an end-to-end workflow to diagnose, reproduce, fix and validate a failing integration test in the Datadog Terraform provider, ending with a draft PR.

    468 GitHub stars~2.4k tokensUpdated yesterday
    Testing & QAAuto-check: notes
  • Grails Test Fixer

    apache/grails-core

    Guides running, reviewing and fixing test failures across grails-core modules with Gradle, including targeted runs and the aggregate HTML and Markdown reports.

    2.9k GitHub stars~1.1k tokensUpdated today
    Testing & QAAuto-check passed
  • Test Temporal workflows with pytest, time-skipping, and mocking strategies.

    40k GitHub starsUsed in 12 repos~1.2k tokens
    Testing & QAAuto-check passed

More from SAP/open-ux-tools

All 9 skills in this repo
  • Eslint Rule Development

    SAP/open-ux-tools

    Official

    Develop a new ESLint rule for @sap-ux/eslint-plugin-fiori-tools.

    158 GitHub stars~3k tokensUpdated yesterday
    Auto-check passed
  • Odata Vocabularies Sync

    SAP/open-ux-tools

    Official

    Sync odata-vocabularies package — update all vocabulary resource files to their latest published versions, and optionally add a new vocabulary given its JSON URL.

    158 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Official

    Add visual filters (chart-based) to SAP Fiori Elements filter bar or value help using CAP or ABAP RAP.

    158 GitHub stars~3k tokensUpdated yesterday
    Auto-check passed
  • Official

    Add analytical chart (chart + table hybrid) to SAP Fiori Elements List Report using aggregated data.

    158 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check passed
  • Sap Fiori App Development

    SAP/open-ux-tools

    Official

    Guidelines for SAP Fiori app development for CAP and standalone projects.

    158 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Sap Fiori Eslint Plugin

    SAP/open-ux-tools

    Official

    Configure, migrate, or run ESLint with @sap-ux/eslint-plugin-fiori-tools in SAP Fiori projects (standalone or CAP).

    158 GitHub stars~640 tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Sap Fiori Opa5 Test Development

What does Sap Fiori Opa5 Test Development do?

A skill your agent uses when writing, fixing, extending, or reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library) or OData V2…. Sap Fiori Opa5 Test Development is an agent skill from SAP/open-ux-tools, published by the product's own GitHub organization.test library) or OData V2 (fioriElementsTestLibrary).

When should I use Sap Fiori Opa5 Test Development?

Sap Fiori Opa5 Test Development fits situations like: reviewing OPA5 integration tests for SAP Fiori Elements applications - whether the app uses OData V4 (sap.fe.test library); OData V2 (fioriElementsTestLibrary); any request involving OPA5 journeys; journeyRunner setup.

How do I install Sap Fiori Opa5 Test Development in Claude Code?

Run `npx skills add SAP/open-ux-tools --skill sap-fiori-opa5-test-development -a claude-code`. Or copy the skill folder (plugins-coding-agents/fiori/skills/sap-fiori-opa5-test-development in SAP/open-ux-tools) into .claude/skills/sap-fiori-opa5-test-development in your project. Claude Code loads it when a task matches its description.

How do I install Sap Fiori Opa5 Test Development in Codex?

Run `npx skills add SAP/open-ux-tools --skill sap-fiori-opa5-test-development -a codex`. Or copy the skill folder (plugins-coding-agents/fiori/skills/sap-fiori-opa5-test-development in SAP/open-ux-tools) into .agents/skills/sap-fiori-opa5-test-development in your project. Codex loads it when a task matches its description.

Can I use Sap Fiori Opa5 Test Development in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add SAP/open-ux-tools --skill sap-fiori-opa5-test-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sap-fiori-opa5-test-development, .gemini/skills/sap-fiori-opa5-test-development, .github/skills/sap-fiori-opa5-test-development and .opencode/skills/sap-fiori-opa5-test-development in your project.

What does Sap Fiori Opa5 Test Development need to run?

Going by SKILL.md and its folder, Sap Fiori Opa5 Test Development needs the command-line tools its instructions call (npm and npx). Our summary lists: Node.js.

Does Sap Fiori Opa5 Test Development access the network?

SKILL.md names 3 domains. In commands or code: docs.oasis-open.org, schemas.microsoft.com and ui5.sap.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Sap Fiori Opa5 Test Development safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Sap Fiori Opa5 Test Development use?

Sap Fiori Opa5 Test Development is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sap Fiori Opa5 Test Development use?

About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 23k tokens, read only when the agent opens those files.

What are the alternatives to Sap Fiori Opa5 Test Development?

Skills that share tags, products or a category with Sap Fiori Opa5 Test Development: Frappe Testing Unit (Impertio-Studio/Frappe_Claude_Skill_Package, 189 stars), Designing Tests (CloudAI-X/claude-workflow-v2, 1.4k stars), CI Triage (canton-network/splice, 117 stars) and Fix Broken Datadog Provider Tests (DataDog/terraform-provider-datadog, 468 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sap Fiori Opa5 Test Development?

SAP (a GitHub organization, an official publisher) maintains it in SAP/open-ux-tools, which has 158 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 10, 2026.

Source: SAP/open-ux-tools on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.