Skip to Content
Product Information
Author's profile photo Volker Buzek

the king is dead – long live the king: wdi5 as UIVeri5 successor

Right in the beginning of 2022, UIVeri5 got deprecated. While we can only speculate on the strategic reasons within SAP for that decision, major technical reasons for sunsetting UIVeri5 were its’ deprecated Protractor code base and its’ limited parallel execution functionality.

In alignment with the UI5 team at SAP, wdi5 will jump to the occassion and claim the successor role of UIVeri5 to be the end-to-end testing framework for UI5. wdi5 is a Webdriver.IO-plugin (“service”) that uses the UI5 Test (RecordReplay) API in order to enhance wdio to operate on UI5 controls. It has already been around a while and in fact is already registered as an “official” Webdriver.IO-service.

wdi5 was born because we at j&s-soft had the need to test both hybrid and UI5 web apps, and there was no tool for that available at the time in 2020. Fast forward, wdi5 today is in a solid state, being used to run end to end test in many UI5 apps already.

roadmap

Now with UIVeri5 gone, here’s how wdi5 will evolve further into your friendly neighborhood UI5 e2e testing framework:

  • provide all UIVeri5 element matchers (and all already posted feature requests), including support for Fiori Element IDs
  • support the Test Recorder
  • provide a wdi5 test generator for easy-ui5 and UI5 community’s generators
  • design a Extension API, mostly for pre-baked authentication options (e.g. auto-magically sign into BTP)
  • provide a Docker image with a self-contained wdi5 environment for running tests
  • integration with Atlassian Jira 😱
  • establish a “Playground” for trying out wdi5 tests quickly in the browser
  • enable a doorway to browserstack and sourcelabs
  • support Visual Regression Testing

Preceding all of the above will be a rewrite of wdi5 to TypeScript to…

a) closer align with the TypeSript codebase of Webdriver.IO itself.

b) use the opportunity and drop support for testing hybrid UI5 apps. Both kapsel and SAP Fiori Client are dea…officially in “sunset mode”. So technically, the npm module wdi5 will go away, while wdio-ui5-service will remain as the sole package – with the name wdi5 also staying as a shorter alias for wdio-ui5-service 😀.

A continuous documentation effort will accompany all development, not only for the code artifacts, but with the goal to provide testing “recipes” reflecting common uses cases.

The entire development around wdi5 will happen in the open, on its’ Github home, with a public roadmap. And wdi5 already is and will always remain Open Source – under an Apache 2.0 license that allows all UI5 developers hassle-free use (and all wdi5 contributors many drinks, har har).

use now!

But don’t hesitate: wdi5 (or more precisely wdio-ui5-service) is ready to be used today.

It already

Check out the many wdi5 tests that ..well… test wdi5 itself over at https://github.com/ui5-community/wdi5/tree/main/test, https://github.com/ui5-community/wdi5/tree/main/examples/ui5-js-app/webapp/test/e2e (UI5 JavaScript) , https://github.com/ui5-community/wdi5/tree/main/examples/fe-app/webapp/wdi5-test (Fiori Elements app), and https://github.com/ui5-community/wdi5/tree/main/examples/ui5-ts-app/test/e2e (UI5 TypeScript).

With the above listed enhancements, wdi5 will not only provide feature-parity with UIVeri5, but hopefully become a true asset for all UI5 developers. It should bring easy-to-use, yet advanced testing capabilities to the table, while getting out of the way in daily dev life.

Last but not least: pimping wdi5 is a joint effort, between SAP, j&s-soft, and you, the UI5 community. Only when we come together, for coding, testing, documenting and using wdi5, can it become the asset we all need for testing UI5 apps. j&s-soft will cover the first wave of necessary code enhancements. But this can (and should!) only go so far, as wdi5 needs governance from all users, not only a single company. So while there already have been some excellent contributions from the community, I hope this is only the beginning.

Onwards and upwards!

PS:

Assigned Tags

      4 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Hendrik Neumann
      Hendrik Neumann

      That's great news Volker! Great community commitment and effort!

       

      Cheers

      Hendrik

      Author's profile photo Surendra Gurram
      Surendra Gurram

      Uiveri5 got deprecated because of the Protractor deprecation. However,  there is still hope because the protractor (actually Angular I see) has partnered with HeroDevs to support coming years.

      References

      https://blog.angular.io/the-state-of-end-to-end-testing-with-angular-d175f751cb9c

      https://www.herodevs.com/support/protractor

       

      Thank you

      Surendra

       

      Author's profile photo Andreas Wenninger
      Andreas Wenninger

      Hi Volker,

      I´ve tried to start with WDI5.

      Just checking your blog, which is well done, but the following URLs are not working anymore.

      Check out the many wdi5 tests that ..well… test wdi5 itself over at https://github.com/js-soft/wdi5/tree/develop/wdio-ui5-service/test and https://github.com/js-soft/wdi5/tree/develop/test/ui5-app/webapp/test/e2e.

      Best regards,

      Andreas

      Author's profile photo Volker Buzek
      Volker Buzek
      Blog Post Author

      thanks for the heads-up - I just updated the links