CLICLItypeA command you run, rather than a dependency you import.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

ui5-test-runner

A standalone command line that runs a UI5 project's QUnit and OPA test pages in parallel browser instances, written for suites too large for one browser, and merges their coverage into one report.

Runs a UI5 application's existing test pages from a command line rather than from a browser tab: it starts from the project's testsuite file, test/testsuite.qunit.html by default, gives each page its own browser instance and runs two of them at a time until the suite is done. Arnaud Buchholz wrote it as a substitute for the UI5 karma runner, for suites big enough that one browser process reaches 2 GB and crashes. A run leaves a report/ folder, a progress page to open while the tests execute, and an nyc coverage report merged from what each page recorded. Legacy mode has it serve the application and instrument the sources itself; remote mode points it at an app somebody else serves, @ui5/cli for instance, and then instrumenting is that project's own business. Four automation libraries are documented, puppeteer by default plus playwright, selenium-webdriver and webdriverio, each with the browsers it can launch, and version 6 states that JSDOM browser emulation is no longer supported.

Facts

Latestv6.0.1ReleasedLast pushLicenceMIT

Where it sits

Lives in
Provides
UI5 testingUI5UI5 testingcapabilityProving a UI still works — unit tests over controllers and formatters, integration tests that drive real controls, and end-to-end runs against a served app.
Requires
Node.jsNode.jsoutside the atlasThe runner is a Node command line installed from npm into the tested project or globally, and the README names the Node version it works with.

Who is behind it

Arnaud BuchholzArnaud BuchholzPersonMaintains this
In the atlas: maintains 1, contributes to 2
@ArnaudBuchholz
maintainerAndreas KunzPersonContributes to this
In the atlas: contributes to 19
@akudev
Arnaud BuchholzPersonContributes to this
In the atlas: contributes to 3
@arnaudbuchholz-sap
fossabotPersonContributes to this
In the atlas: contributes to 2
@fossabot
JulianSchSAPPersonContributes to this
In the atlas: contributes to 1
@JulianSchSAP
Juri ZeislerPersonContributes to this
In the atlas: contributes to 2
@juriz889
Marian ZeisPersonContributes to this
In the atlas: maintains 35, contributes to 86, wrote 25
@marianfoo
Raj SinghPersonContributes to this
In the atlas: contributes to 1
@rajxsingh
7 contributors

What it declares

Every artifact

Type
CLI
Origin
Independently maintained
Runtime
Node.js

As a CLI

Distributed through
does not say

For UI5 testing

Supports
Code coverage
Test level
Unit testsIntegration tests
property statedstated nonot said

Tasks this contributes to2Beta

Run a UI5 project's existing QUnit and OPA5 pages unattendedThe test pages a project already has run from one command, with nobody opening them in a browser tab, and the run leaves a report a pipeline can read.Freestyle, Fiori elementsCoverscommand-line runner
What it does

One command runs the project's QUnit and OPA5 pages, each page in its own browser instance and a configurable number at a time, two by default, and consolidates every result into one report. Nothing in the existing test files changes.

Remaining work

Pick the mode: remote mode takes the URL of a test suite page on an application somebody else serves, legacy mode has the runner serve the application itself. Coverage is a switch in version 6 rather than the default.

All options on the UI5 testing page →
Test a UI5 app that is already deployed, from a pipelineA test reaches the application a user would open — deployed, served by somebody else, possibly behind a login — and the run happens in a pipeline rather than on a developer's machine.Freestyle, Fiori elementsCovers, under conditionsrunner against a served instance
What it does

Reaches a deployed instance from the other side: remote mode takes the URL of the application's test suite page and needs no access to the sources, so what runs is the in-page suite on a deployed application rather than a journey through it.

Conditions

The application's test suite page is reachable at a URL, which is where remote mode starts

Remaining work

Deploy the test pages with the application, point the runner at their URL, and establish how the run gets past a login — nothing read for this assessment states that it can.

All options on the UI5 testing page →

Connections2

Install

npm install --save-dev ui5-test-runner
  • Additional packages are installed during execution rather than declared as dependencies: the README states that puppeteer, selenium-webdriver and nyc are taken from the tested project when installed locally there, and installed globally otherwise.

Copied from ArnaudBuchholz/ui5-test-runner — README, read . Not run by the atlas.

Where ui5-test-runner runsBy its type: a CLI is run from a terminalcallsdocumentedrequiresYour terminal, actorYour terminalNode.js, systemNode.jssystemui5-test-runner, moduleui5-test-runner
SAPnot SAP's, or the project's ownstated in the documentdocumented only

README

quoted from ArnaudBuchholz/ui5-test-runner under MIT, read
ArnaudBuchholz/ui5-test-runner/README.mdOn GitHub

UI5 Test runner

Node.js CI Package Quality Known Vulnerabilities ui5-test-runner PackagePhobia MIT License FOSSA Status FOSSA Status Documentation

A self-sufficient test runner for UI5 applications enabling parallel execution of tests.

To put it in a nutshell, some UI5 applications have so many tests that when you run them in a browser, it ends up crashing. The main reason is memory consumption : the browser process goes up to 2 GB and it blows up. JavaScript is based on garbage collecting but it needs time to operate and the stress caused by executing the tests as well as the use of iframes do not let enough bandwidth for the browser to free up the memory.

This tool is designed and built as a substitute of the UI5 karma runner. It executes all the tests in parallel thanks to several browser tabs (which also reduces the total execution time).

💿 How to install

  • Works with Node.js >= 24.11.1
  • Local installation
    • npm install --save-dev ui5-test-runner@6
    • Trigger either with npx ui5-test-runner or through an npm script invoking ui5-test-runner
  • Global installation
    • npm install --global ui5-test-runner@6
    • Trigger with ui5-test-runner

NOTE : additional packages might be needed during the execution (puppeteer, selenium-webdriver, nyc...) . If they are found installed locally in the tested project, they are used. Otherwise, they are installed on demand.

🤖 AI-powered documentation

Use npx ui5-test-runner@6 --mcp to start an MCP server exposing the latest indexed documentation to your AI client.

MIT, read

History

Latest

v6.0.1

Notes
Bug Fixes
  1. v6.0.0

    Notes

    Why v6

    In v5, each test page had to post its progress and results back to the runner — requiring extra server plumbing, browser-security relaxations (--unsecure), and options like --localhost. v6 flips this: the runner injects a lightweight agent into each page and pulls the state out by polling it directly. The page no longer reaches back to the runner, which removes a lot of old machinery and unlocks the improvements below.

    Highlights

    • Faster, more reliable at scale — a single browser instance hosts all parallel pages, with quicker page bootstrap and native caching of UI5 resources across pages.

    • Driver and browser are now separate options — --driver selects the automation engine (puppeteer, playwright, webdriverio, selenium-webdriver); --browser selects the actual browser (chrome, chromium, firefox, webkit, …).

    • Standard report format — reports now follow the Common Test Report Format (CTRF); junit.xml is generated by default alongside report.json and report.html.

    • Live trace visualization — the dynamic HTML progress page is replaced by real-time traces via --log.

    • Uncaught errors fail the page — a page that throws is no longer reported green, surfacing real defects immediately.

    AI-assisted migration

    A built-in MCP server exposes the live documentation — including the full migration guide — to any MCP-compatible AI client:

    bashnpx ui5-test-runner@6 --mcp

    Point your assistant at it and have it migrate your config option by option, working from an authoritative, up-to-date source rather than guessing. It's documentation-only (it answers questions; it doesn't run or control tests).

    Breaking changes

    v6 requires Node.js 24. Several options were renamed, replaced, or removed (coverage and screenshots are now off by default; --libs → --lib; browser flags reworked; --localhost, --capabilities, report generators and others removed).

    See the full migration guide for an option-by-option breakdown.

    5.14.2 (2026-10-07)

    5.14.2 (2026-10-07)

    Bug Fixes
    • use extend(details) in QUnit.begin to restore QUnit 3 compatibility (#195) (d88093e)

    5.14.1 (2026-09-18)

    5.14.1 (2026-09-18)

    Bug Fixes
    • ensures temp filename contains only alphanumerical chars (#191) (9dd9124)

    5.14.0 (2026-08-19)

    5.14.0 (2026-08-19)

    Bug Fixes
    • deps: update dependencies (9bf9d3c)
    Features
    • adjust test (aea4d18)
    • allow emulating devices with puppeteer (a97eac7)

    6.0.0-beta.5 (2026-06-05)

    6.0.0-beta.5 (2026-06-05)

    Features
    • new options to handle NPM package installation (d1c5f54)
    • npm: working on dynamic installation (8c544a4)

    6.0.0-beta.4 (2026-06-01)

    6.0.0-beta.4 (2026-06-01)

    Bug Fixes
    • adjust cli command detection (7c544d8)

    5.13.1 (2026-04-04)

    5.13.1 (2026-04-04)

    Bug Fixes
    • pass environment variables to start command #171 (04444fe)

    5.13.0 (2026-01-03)

    5.13.0 (2026-01-03)

    Bug Fixes
    Features
    • add json report generator to create json format report (9ef9f2c)

    5.12.0 (2025-12-04)

    5.12.0 (2025-12-04)

    Bug Fixes
    • --if option should be evaluated even for --capabilities (2132f07)
    • --if must be allowed for capabilities to enable e2e tests filtering (#163) (f7fd2ef)
    • unref start process to unblock the runner (#157) (28ccb1b)
    Features
    • enables generic library mapping (#163) (0a0a263) : use --libs *=webapp/resources to map resources/ sub folder

    5.11.2 (2025-11-30)

    5.11.2 (2025-11-30)

    Bug Fixes
    • make sure UI5 mapping is used as expected, log version (e3a7105)

    5.11.1 (2025-11-21)

    5.11.1 (2025-11-21)

    Bug Fixes
    • use proper concatenation to build final URL (#160) (f70782a)

    5.11.0 (2025-11-17)

    5.11.0 (2025-11-17)

    Bug Fixes
    • add unsecure for ui5 remote tests because of local-network-access-check (43cd0ea) and (ffc48d8)

    • adjust selenium's chrome configuration, add unsecure (5a6021d)

    • handling of browserArgs in a config file (af260f0)

    • implements a failover if not able to kill processes (#157) (6f53cf2)

    • improve test compatibility (windows) and stability (wait for process.exit call) (60d6d1e)

    Features

    5.10.1 (2025-10-07)

    5.10.1 (2025-10-07)

    Bug Fixes
    • compatibility with ESM projects (#156) (52afe42)
    • implement unsecure option for playwright (2bad4f0)

    5.10.0 (2025-09-29)

    5.10.0 (2025-09-29)

    Bug Fixes
    • report: absolute / relative path switch (8502d60)
    • cors: allows sap-passport (7a72cbc)
    • probe: avoids infinite loop with --deep-probe when no testPageUrls is being extracted (1adf1a3)
    • job: default label if not set (d102491)
    • e2e: fix report evaluation, checks that it really loads (8a8645b)
    • main: improve error reporting on startup (8218cbb)
    • leak: improve handle documentation (0aa02d8)
    • start: improve start command termination (cf8400e)
    • qunit: limit the scope of QUnit hooks to the main window (9e4dc47)
    Features
    • add hidden option to monitor handles (wip) (721db3e)
    • adds a setting for parallel probing (6c42260)
    • adjust jest2qunit wrapper (d5c6958)
    • compress report (0d78426)
    • deep probe (9f53c50)
    • detect and report on child process errors (ef19237)
    • dump logo and os infos (c1149ef)
    • experimental: --qunit-batch-size (715b48a)
    • experimental: fast qunit-hooks (46152dd)
    • improve documentation of errors (2d6ab66)
    • jest2qunit: script to adapt Jest tests to QUnit (dfa1fd2)
    • prefer fetch if available over XMLHttpRequest (0f980e8)
    • show Node.js version in the output (e3bd375)

    5.9.1 (2025-07-31)

    5.9.1 (2025-07-31)

    Bug Fixes
    • includes values for options to avoid --no-screenshot generating --screenshot (8013bd4)

    5.9.0 (2025-07-24)

    5.9.0 (2025-07-24)

    Bug Fixes
    • detect and filter out empty browser arguments (1bd8573)
    Features
    • introduce "Empty browser argument filtered out" warning (ffbfe60)
    • keep track of command line arguments and config file content (c47676e)

    5.8.1 (2025-06-23)

    5.8.1 (2025-06-23)

    Bug Fixes
    • bump REserve to 2.3.3 to limit listeners on requests' sockets (a0b3513)

    5.8.0 (2025-06-20)

    5.8.0 (2025-06-20)

    Bug Fixes
    • improve detection on non TTY console (4defaa8)
    Features
    • new --ci option to force output to non interactive (6167abf)

    5.7.4 (2025-06-16)

    5.7.4 (2025-06-16)

    Bug Fixes
    • secure generation of junit-xml-report (18bf3b6)

    5.7.3 (2025-06-15)

    5.7.3 (2025-06-15)

    Bug Fixes
    • forcibly close REserve and wait for handles to be released (182027d)

    5.7.2 (2025-06-08)

    5.7.2 (2025-06-08)

    Bug Fixes
    • add traces during report generation (7bc620e)
    • asynchronous check for latest version no more impacting startup time, also check ui5-test-runner itself (a0622a8)
    • capabilities: handle case where parent window is "simulated" (happy-dom) (0d59df1)
    • capabilities: proper logging of errors (0d67ae0)
    • detect leaking TLS sockets that prevents runner termination (7c9a868)
    • handle new punyexpr export format (#136) (f839d4d)
    • increase default end timeout (1280e81)
    • jsdom: also handles jsdomError (d2dd09e)
    • jsdom: restores jsdom compatibility (#137) (fe753cd)

    5.7.1 (2025-05-21)

    5.7.1 (2025-05-21)

    Bug Fixes

    5.7.0 (2025-04-18)

    5.7.0 (2025-04-18)

    Bug Fixes
    • add missing mapping for log levels (597367b)
    • undefined is converted to a unicode character to avoid failure (f6b0427)
    Features
    • enables the override of localhost hostname #131 (7c0dfad)

    5.6.3 (2025-04-18)

    5.6.3 (2025-04-18)

    Bug Fixes
    • do not stop the server while watching (#134) (e13e0b9)

    5.6.2 (2025-03-24)

    5.6.2 (2025-03-24)

    Bug Fixes
    • ensure libs internal redirection url is absolute (4c4ce0f)

    5.6.1 (2025-03-20)

    5.6.1 (2025-03-20)

    Bug Fixes

    5.6.0 (2025-03-18)

    5.6.0 (2025-03-18)

    Features

    5.5.2 (2025-03-16)

    5.5.2 (2025-03-16)

    Bug Fixes
    • fails the main command when a batch item fails (#127) (740ded0)
    • handle windows case for node command (8d77276)
    • timeout makes the test fails even if the page did not start (#111) (6043841)

    5.5.1 (2025-03-13)

    5.5.1 (2025-03-13)

    Bug Fixes

    5.5.0 (2025-03-08)

    What's Changed

    • Improved documentation
    • --screenshot-on-failure to prevent screenshot when a failure happens
    • Introducing Batch mode
    • --url may use port 0: it is replaced with the runner inner server port
    • --config parameter to load a configuration file
    • --end parameter to execute a script after the tests
    • --start-wait-url and --start-wait-method available in all modes
    • Implementing JUNIT_XML_REPORT_FILENAME (#121)
    • --watch-folder to watch any folder during legacy or remote mode (#119)
    • Fix --language browser option (#122)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.4.3...5.5.0

    5.4.3 (2025-01-28)

    What's Changed

    • Adjust coding related to incident #116

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.4.2...5.4.3

    5.4.2 (2025-01-24)

    What's Changed

    • Reenable screenshot for webdriverio (see #117)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.4.1...5.4.2

    5.4.1 (2025-01-24)

    What's Changed

    • fix regression in configuration file reading (see #116)
    • disable screenshot for webdriverio (see #117)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.4.0...5.4.1

    5.4.0 (2025-01-20)

    What's Changed

    Note

    this should not be a breaking change

    • Fix the deserialization of configuration files (which generates extra parameters), see #109

    • New feature : --start command for remote mode to remove the need of start-server-and-test when running tests that depend on an external command, see #112

    • Improve command line usage documentation

    New Contributors

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.7...5.4.0

    5.3.7 (2024-12-01)

    What's Changed

    • Fix the asynchronous handling of qunit-hooks (#107)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.6...5.3.7

    5.3.6 (2024-11-21)

    What's Changed

    • Fix the junit-xml-report script to support logs without messages

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.5...5.3.6

    5.3.5 (2024-11-15)

    What's Changed

    • Fix typo issue when detecting pages with no tests
    • Improve validation of path to remove trailing path separator (required for reserve file handler)
    • Includes Node 22 in the test grid

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.4...5.3.5

    5.3.4 (2024-09-17)

    What's Changed

    • Fix issue with XmlHttpRequest object override by Sinon.js (#101)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.3...5.4.4

    5.3.3 (2024-09-03)

    What's Changed

    • Adjust libs mapping to fit REserve expectations (#99)
    • Add verbose traces to debug libs mapping
    • Disable coverage collection if coverage is not enabled

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.2...5.3.3

    5.3.2 (2024-08-20)

    What's Changed

    • Remove content-length header sent by the client (#98)
    • Disable @ui5/cli@4 tests on node < 20 (E2E tests)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.1...5.3.2

    5.3.1 (2024-07-04)

    What's Changed

    • Fix --split-opa for QUnit v1 (#96)
    • Adds E2E tests timeout (#97)
    • Assess legacy mode without scripts (E2E tests)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.3.0...5.3.1

    5.3.0 (2024-06-28)

    What's Changed

    • Safer detection of UI5 objects to reduce the job description (#92)
    • Solve an exception with inbuilt server (#94)
    • Better handling of QUnit preconfig (#95)
    • Handling of nyc@17

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.2.0...5.3.0

    5.2.0 (2024-06-10)

    What's Changed

    • Unified options between browsers instantiation commands
    • Enable extra options for chrome browsers

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.1.0...5.2.0

    5.1.0 (2024-06-07)

    What's Changed

    • Documentation improvement (lib parameter, aggregated coverage)
    • Migration to REserve 2
    • Normalize merged coverage JSON (using absolute path)
    • Improve jsdom integration

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/5.0.0...5.1.0

    5.0.0 (2024-04-27)

    What's Changed

    • Support of webdriver.io browser automation through the $/webdriver.io.js instantiation command
    • Support of Business Application Studio
    • Extract all files coverage when nyc.json's all is set (set by default) :
      • A scanner is required for remote mode
      • $/scan-ui5.js is provided for @ui5/cli
    • Fix coverage extraction for TypeScript projects (served by @ui5/cli, see the documentation)
    • Fix #87 : --serve-only combined with --coverage breaks file server
    • Fix #88 : Generated junit XML report currently missing required property 'classname' for each testcase
    • Fix $/selenium-webdriver.js instantiation command to hide firefox browser
    • Improve tests coverage by implementing most common end-to-end scenarios
    • Document warnings that appear during execution

    Breaking change

    Because of the way coverage is calculated when nyc.json's all is set, this version may induce a significant drop in coverage.

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.5.1...5.0.0

    4.5.1 (2024-04-16)

    What's Changed

    • Fix #86

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.5.0...4.5.1

    4.5.0 (2024-04-13)

    What's Changed

    • Add --split-opa to automatically split OPA journeys
    • Add time information in the junit xml report
    • fix issue with qunit-hook : page url is now grabbed from topmost window
    • selenium-webdriver
      • fix chrome binary option
      • reduce traces for chrome

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.4.0...4.5.0

    4.4.0 (2024-03-17)

    What's Changed

    • Add --offline to limit network usage (demos)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.3.2...4.4.0

    4.3.2 (2024-03-16)

    What's Changed

    • Fix test page URLs by removing the # part

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.3.1...4.3.2

    4.3.1 (2024-03-08)

    What's Changed

    • Fix output when using --serve-only

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.3.0...4.3.1

    4.3.0 (2024-03-07)

    What's Changed

    • New option --preload to preload UI5 libraries in legacy mode
    • Fix output to avoid flickering

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.2.1...4.3.0

    4.2.1 (2024-02-27)

    What's Changed

    • New option --page-close-timeout to adds a small delay before closing the browser on done callback (some QUnit tests are loaded asynchronously and triggers testStart right after). Defaulted to 250ms

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.2.0...4.2.1

    4.2.0 (2024-02-26)

    What's Changed

    • New option --alternate-npm-path

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.1.1...4.2.0

    4.1.1 (2024-02-24)

    What's Changed

    • Fixed an issue with UI5 object deserialization
    • Prevent error cascading on QUnit hooks

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.1.0...4.1.1

    4.1.0 (2024-02-19)

    What's Changed

    • Improve handling of loose qunit (when started before the tests are loaded)
    • Progress monitoring now reconnects when the server becomes available
    • Scripts are injected through SAPUI5 resources and through browser evaluation (when UI5 resources are using CDN)
    • Regular updates are generated in non interactive output (CI/CD)
    • Map local sources for remote coverage if found below webapp
    • Document how to demo main features

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/4.0.0...4.1.0

    4.0.0 (2024-02-08)

    What's Changed

    New Contributors

    Breaking Change

    • Dropping support of Node.js 16

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.5...4.0.0

    3.3.5 (2023-10-08)

    What's Changed

    • Fix : playwright --visible option now working
    • Feature : supports QUnit tests starting before the tests are declared (can be blocked with --qunit-strict)
    • Fix : repair code coverage when combining --url and legacy mode
    • Tests : JS and TS samples are now tested to ensure nothing gets broken
    • Documentation : various improvements

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.4...3.3.5

    3.3.4 (2023-10-02)

    What's Changed

    • Fix : checking files locally before downloading them for code coverage #64

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.3...3.3.4

    3.3.3 (2023-09-28)

    What's Changed

    • Feature : improve documentation and coverage proxy feature

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.2...3.3.3

    3.3.2 (2023-09-25)

    What's Changed

    • Fix: timed out page are reported as errors
    • Fix #61 : text report width adjusted to console width
    • Fix #62 : text report generation error
    • Feature : include coverage report in text output, also check for coverage percentage

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.1...3.3.2

    3.3.1 (2023-09-22)

    What's Changed

    • Disables puppeteer screenshot for Node.js version 16, see puppeteer issue
    • Fix #60 : UI5 mapping is disabled only if no-ui5 is used
    • Improve experimental coverage feature to prevent crash when instrumenting files in parallel
    • Fix unhandled file content to display the originating page

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.3.0...3.3.1

    3.3.0 (2023-09-21)

    What's Changed

    • documentation: using mkdocs by @marianfoo in https://github.com/ArnaudBuchholz/ui5-test-runner/pull/54
    • fix: playwright initialization (#57)
    • feature: ability to extract coverage in URL mode improved (#56)
    • feature: reports show the test type (unit or OPA)
    • feature: text report provides failure details (#53)

    New Contributors

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.2.0...3.3.0

    3.2.0 (2023-06-06)

    • Adds playwright support, including video recording and HAR generation

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.1.1...3.2.0

    3.1.1 (2023-06-01)

    • Associates URL to folder name in the output

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.1.0...3.1.1

    3.1.0 (2023-05-30)

    • Adds a link to download ui5-test-runner-job.json from the report
    • Enables code coverage with --url (code must first be instrumented with nyc)
    • Extract some settings from nyc.json

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/3.0.0...3.1.0

    3.0.0-2 (2023-05-08)

    2.0.5 (2023-04-14)

    • Fix #45 : nyc issue
    • Fix #46 : screenshots are taken in case of test failure even if --no-screenshot is used. Now this screenshot appears in the report
    • Fix #47 : when the report is embedded in an iFrame through srcdoc, navigation was not working
    • Improve time logging in the output

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/2.0.4...2.0.5

    2.0.4 (2023-04-05)

    • Improve external packages detection (for instance: puppeteer) by using require before trying to load from the local or global npm path

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/2.0.3...2.0.4

    2.0.3 (2023-03-30)

    • Fix junit-xml-report generation for failures without source

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/2.0.2...2.0.3

    2.0.2 (2023-03-28)

    • Fix #43 Report not generated

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/2.0.1...2.0.2

    2.0.1 (2023-03-23)

    • Fix #42: Change precedence of mappings to override default ones
    • Improve job serialization (RegEx were missing)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/2.0.0...2.0.1

    2.0.0 (2023-03-06)

    Breaking change

    Version 2.0.0 does not work like 1.x.y, see documentation

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.5...2.0.0

    1.1.5 (2022-10-26)

    Dropping support of Node 12.x

    • Latest version of puppeteer does not support it anymore

    What's Changed

    New Contributors

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.4...1.1.5

    1.1.4 (2022-04-17)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.3...1.1.4

    1.1.3 (2021-11-24)

    What's Changed

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.2...1.1.3

    1.1.2 (2021-10-27)

    What's Changed

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.1-fix...1.1.2

    1.1.1-fix (2021-10-26)

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.1.0...1.1.1-fix

    1.1.0 (2021-10-26)

    What's Changed

    Full Changelog: https://github.com/ArnaudBuchholz/ui5-test-runner/compare/1.0.7...1.1.0

    1.0.7 (2021-09-05)

    • Better handling of browser failure (browserRetry)
    • Preloading of ui5-test-runner.json
    • Introduces -- to pass parameters to the browser instantiation command
    • Fix #17

    1.0.6 (2021-08-24)

    1.0.5 (2021-08-24)

    1.0.4 (2021-07-16)

    1.0.3 (2021-07-03)

    1.0.2 (2021-06-29)

    • Fix keepAlive mode
    • Node 16.x support

    1.0.0 (2021-06-01)

  2. v5.14.2

  3. v5.14.1

  4. v5.14.0

  5. v6.0.0-beta.5prerelease

  6. v6.0.0-beta.4prerelease

  7. v5.13.1

  8. v5.13.0

  9. v5.12.0

  10. v5.11.2

  11. v5.11.1

  12. v5.11.0

  13. v5.10.1

  14. v5.10.0

  15. v5.9.1

  16. v5.9.0

  17. v5.8.1

  18. v5.8.0

  19. v5.7.4

  20. v5.7.3

  21. v5.7.2

  22. v5.7.1

  23. v5.7.0

  24. v5.6.3

  25. v5.6.2

  26. v5.6.1

  27. v5.6.0

  28. v5.5.2

  29. v5.5.1

  30. v5.5.0

  31. v5.4.3

  32. v5.4.2

  33. v5.4.1

  34. v5.4.0

  35. v5.3.7

  36. v5.3.6

  37. v5.3.5

  38. v5.3.4

  39. v5.3.3

  40. v5.3.2

  41. v5.3.1

  42. v5.3.0

  43. v5.2.0

  44. v5.1.0

  45. v5.0.0

  46. v4.5.1

  47. v4.5.0

  48. v4.4.0

  49. v4.3.2

  50. v4.3.1

  51. v4.3.0

  52. v4.2.1

  53. v4.2.0

  54. v4.1.1

  55. v4.1.0

  56. v4.0.0

  57. v3.3.5

  58. v3.3.4

  59. v3.3.3

  60. v3.3.2

  61. v3.3.1

  62. v3.3.0

  63. v3.2.0

    Other 1

  64. v3.1.1

    Other 1

  65. v3.1.0

    Other 3

  66. v3.0.0-2

    Other 3

  67. v2.0.5

    Other 4

  68. v2.0.4

    Other 1

  69. v2.0.3

    Other 1

  70. v2.0.2

    Other 1

  71. v2.0.1

    Other 2

  72. v2.0.0

    Breaking

  73. v1.1.5

  74. v1.1.4

  75. v1.1.3

  76. v1.1.2

  77. v1.1.1-fix

  78. v1.1.0

  79. v1.0.7

    Other 4

  80. v1.0.6

  81. v1.0.5

  82. v1.0.4

  83. v1.0.3

  84. v1.0.2

    Other 2

  85. v1.0.0

11,691downloads per week, npm
Weekly downloads for ui5-test-runner26 complete calendar weeks from 2026-04-20 to 2026-10-18; the latest total is 11691.20 Apr – 26 Apr: 20,79227 Apr – 3 May: 14,9984 May – 10 May: 18,85611 May – 17 May: 19,33318 May – 24 May: 21,36325 May – 31 May: 19,3101 Jun – 7 Jun: 18,9308 Jun – 14 Jun: 21,43215 Jun – 21 Jun: 20,49922 Jun – 28 Jun: 17,85029 Jun – 5 Jul: 16,0456 Jul – 12 Jul: 20,94313 Jul – 19 Jul: 19,74320 Jul – 26 Jul: 20,81527 Jul – 2 Aug: 18,5083 Aug – 9 Aug: 21,29310 Aug – 16 Aug: 16,38117 Aug – 23 Aug: 19,59124 Aug – 30 Aug: 21,60831 Aug – 6 Sept: 17,0827 Sept – 13 Sept: 15,50914 Sept – 20 Sept: 18,01321 Sept – 27 Sept: 21,00328 Sept – 4 Oct: 23,5555 Oct – 11 Oct: 18,07512 Oct – 18 Oct: 11,691
UI5 testing
  1. ui5-middleware-odata-recorderUI5 middleware recording OData traffic as mock server datasetsfrom UI5
  2. jest-environment-ui5Jest environment running UI5 unit tests in Node.jsfrom UI5
  3. openui5-smart-mockserverUI5 MockServer extension generating mock data with Faker.jsfrom UI5
  4. vitest-environment-ui5Vitest environment running UI5 unit tests in Node.jsfrom UI5
  5. wdio-qunit-serviceWebdriverIO service running QUnit test pagesfrom UI5
  6. @openui5/sap.ui.coreFramework core: module loader, MVC runtime, binding, routing, themingfrom UI5
  7. karma-ui5-transpileKarma preprocessor transpiling UI5 sources via ui5-tooling-transpilefrom UI5
  8. ui5-journey-recorderChrome extension generating OPA5 or wdi5 tests from recorded journeysfrom UI5
  9. wdi5-cucumberwdi5 plugin for Cucumber-style BDD tests on Fiori Elements appsfrom UI5
  10. wdi5-fe-selectorswdi5 selectors for locating controls in Fiori Elements appsfrom UI5
  11. wdio-ui5-serviceEnd-to-end testing for UI5 on WebdriverIO with UI5 control selectorsfrom UI5
  12. @ui5/middleware-code-coverageUI5 CLI middleware for Istanbul code coveragefrom UI5
  13. vscode-ui5-odata-mock-generatorVS Code extension generating OData mock data from service metadatafrom UI5

Details

Sources4
Added by handdiscovered herechecked
npm registry, ui5-test-runnerversion, releases, installschecked
github.com/git+https://github.com/ArnaudBuchholz/ui5-test-runner.gittree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
runtimesnode
latestv6.0.1
first release
releases and cadence98, ~16d median
discovered viaAdded by hand
first seen in the atlas
ecosystem and domainui5, developer-experience
Contributors7

From the repository’s contributor list, .

History in the atlas4
  1. Four automation libraries are documented, `puppeteer` by default plus `playwright`, `selenium-webdriver` and `webdriverio`, each with the browsers it can launch, and version 6 states that JSDOM browser emulation is no longer supported.
  2. docs/introduction.md and docs/browser_selection.md
  3. test_level, coverage_report
  4. First seen.
For your agent
Ref
artifact:arnaudbuchholz-ui5-test-runner
JSON
/artifacts/arnaudbuchholz-ui5-test-runner.json
MCP
Connecting an agent