Uploaded August 2026 | Updated September 2026, 3 weeks ago
Writing comprehensive OPA5 integration tests for SAP Fiori elements applications has historically been a manual, time-consuming process, as standard generators typically provide only a "hello world" test scaffold.
By leveraging the SAP Fiori elements test library and OData service metadata, we can now bridge this gap by automatically generating OPA5 tests that cover the specific features enabled by your metadata out of the box.
This session introduces a new approach to test automation where the initial heavy lifting is handled by SAP Fiori tools, allowing developers to focus their efforts on testing unique business logic and custom extensions. We will explore how metadata-driven generation ensures higher test coverage from day one while maintaining the flexibility to layer on manual enhancements.
Join us to see how you can slash your testing overhead and move from empty test files to fully verified applications in a fraction of the time.
Speakers:
Dominik Heim (SAP)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Video Chapters:
00:00 Welcome and Intro
00:48 Metadata-Driven Test Generation for SAP Fiori Elements
19:30 Q&A
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Resources:
Slides: raw.githubusercontent.com/heimwege/UI5con_2026/main/resources/MetadataDrivenTestGenerationForSAPFioriElements.pdf
Pull-Request virtual endpoints supporting new sandbox: github.com/SAP/open-ux-tools/pull/4615
Find more info here: ui5con.org
Writing comprehensive OPA5 integration tests for SAP Fiori elements applications has historically been a manual, time-consuming process, as standard generators typically provide only a "hello world" test scaffold.
By leveraging the SAP Fiori elements test library and OData service metadata, we can now bridge this gap by automatically generating OPA5 tests that cover the specific features enabled by your metadata out of the box.
This session introduces a new approach to test automation where the initial heavy lifting is handled by SAP Fiori tools, allowing developers to focus their efforts on testing unique business logic and custom extensions. We will explore how metadata-driven generation ensures higher test coverage from day one while maintaining the flexibility to layer on manual enhancements.
Join us to see how you can slash your testing overhead and move from empty test files to fully verified applications in a fraction of the time.
Speakers:
Dominik Heim (SAP)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Video Chapters:
00:00 Welcome and Intro
00:48 Metadata-Driven Test Generation for SAP Fiori Elements
19:30 Q&A
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Resources:
Slides: raw.githubusercontent.com/heimwege/UI5con_2026/main/resources/MetadataDrivenTestGenerationForSAPFioriElements.pdf
Pull-Request virtual endpoints supporting new sandbox: github.com/SAP/open-ux-tools/pull/4615
Find more info here: ui5con.org






![UI5ers live #25: UI5-Tooling-Stringreplace, Personalization, TypeScript w/ custom libs
In this episode we have Dominik Feininger as a guest. He recently reworked the string replacer tooling extensions and will explain his changes as well as the new features he introduced. Dominik will also talk about how he centralized the tooling extension into a common NPM package (ui5-tooling-stringreplace) and why this makes sense. We will also focus on some usability enhancements we recently published for the UI5 table personalization. For example, we have added a filter-bar-like functionality in the filter panel of the personalization dialog and a new column header personalization menu. Martin Häuser and Oliver Stoyanovski will introduce these enhancements to you. And finally, Peter has some tips and tricks for working with custom libraries in UI5 projects with and without TypeScript.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Video Chapters:
00:00 Welcome
01:34 Announcement: The babel transform-ui5 project moved to UI5 Community (https://github.com/ui5-community/babel-plugin-transform-modules-ui5)
02:48 Motivation: Contributing to the ui5-tooling-stringreplace project (https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-tooling-stringreplace/)
03:59 Demo: Changes made on ui5-tooling-stringreplace
08:20 Tipp: Order Execution of UI5 Ecosystem Showcase Tasks and Middlewares
10:59 Q/A: Whats the difference between ui5-tooling-transpile and babel-plugin-transform-modules-ui5?
12:45 Demo: Improvements in the table personalization content on the example of the smart table (https://ui5.sap.com/#/entity/sap.ui.comp.smarttable.SmartTable/sample/sap.ui.comp.sample.smarttable.smartMTableWithCriticality)
16:17 Demo: How to implement personalization in a freestyle approach (https://ui5.sap.com/#/topic/a3c3c5eb54bc4cc38e6cfbd8e90c6a01)
19:36 Demo: Introducing the Column Menu control for table personalization (SAPUI5 v1.110)
20:48 Demo: Implementing column menu control with a responsive table
22:27 Demo: Implementing column menu control with a grid table
25:01 Demo: Column menu control with a smart table
26:55 Q/A: When will the mdc library publicly available?
27:53 Q/A: Why does personalization (sort, filter...) for mdc looks different than for smart controls
29:38 Q/A: Can the ui5 build task be modified to ignore files that contain a space
30:49 Tipp: How to build custom libraries in combination with application projects
39:40 Final Words
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Resources:
babel transform-ui5: https://github.com/ui5-community/babel-plugin-transform-modules-ui5
ui5-tooling-stringreplace project: https://github.com/ui5-community/ui5-ecosystem-showcase/blob/main/packages/ui5-tooling-stringreplace/README.md
ui5-tooling-stringreplace npm package: https://www.npmjs.com/package/ui5-tooling-stringreplace
GitHub Issue [ui5-tooling-transpile-middleware] not working in combination with [ui5-middleware-stringreplacer] : https://github.com/ui5-community/ui5-ecosystem-showcase/issues/665
Sample Smart Responsive Table: https://ui5.sap.com/#/entity/sap.ui.comp.smarttable.SmartTable/sample/sap.ui.comp.sample.smarttable.smartMTableWithCriticality
Personalization Documentation: https://ui5.sap.com/#/topic/a3c3c5eb54bc4cc38e6cfbd8e90c6a01
API Reference for sap.m.p13n.Popup: https://ui5.sap.com/#/api/sap.m.p13n.Popup
Sample using sap.m.p13n.Popup: https://ui5.sap.com/#/entity/sap.m.p13n.Popup/sample/sap.m.sample.p13n.Popup
Recording of UI5con HYBRID 2022: P13nify Everything - Personalization for Any Control (Workshop): https://youtu.be/LclKOae-ts0
API Reference for sap.m.table.colummenu.Menu: https://ui5.sap.com/#/api/sap.m.table.columnmenu.Menu
Sample for view settings & menus: https://ui5.sap.com/#/entity/sap.m.Table/sample/sap.m.sample.TableViewSettingsDialog
Sample for table related menu: https://ui5.sap.com/#/entity/sap.ui.table.Table/sample/sap.ui.table.sample.Menus
Sample for smart table with responsive table: https://ui5.sap.com/#/entity/sap.ui.comp.smarttable.SmartTable/sample/sap.ui.comp.sample.smarttable.mtable
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Music: klinik FX UI5ers live #25: UI5-Tooling-Stringreplace, Personalization, TypeScript w/ custom libs](https://i.ytimg.com/vi/ariruRs1Pvg/mqdefault.jpg)



