SAP Hana Support Coming Soon to Rapise

22-Jan-2020 by Adam Sandman Product News

We are pleased to announce that we will be soon releasing our initial support for the SAP Hana ERP Platform. Our Rapise test automation platform has already been proven for use in complex ERP and CRM applications such as Microsoft Dynamics and Salesforce, and now that power and flexibility is coming to the SAP ecosystem.

What are our Plans for 2020

Following on from developing specialized support for Dynamics and Salesforce, we are focused in 2020 on adding support for testing SAP HANA ERP installations. The support for SAP HANA will be released by Inflectra in two broad phases:

  1. Support for the SAP HANA Web Interface, also known as UI5 or Fiori
  2. Support for the thick-client SAP GUI interface that runs as a desktop application

Phase 1 - Support for SAP UI5 (Fiori)

Rapise 6.3 will include an initial version of a new web library called DomSAP. This will provide support for the SAP UI5 (Fiori) platform itself. In fact, UI5 is a complete web platform that was developed by SAP as OpenUI5 for use by other applications, not just SAP. Currently UI5 is being used by SAP for its new web user interface, as well as by third party SAP ERP addons and even other standalone applications (unrelated to SAP).

The OpenUI5 library is very extensive and has support many different types of controls and user interface elements:

Despite being a common platform, applications built with SAP OpenUI5 often will have different page layouts and organizations. Therefore once we have released the initial platform support in Rapise 6.3, we will be working with our solution partners and MVP customers to define which use cases and business processes will be the highest priority to model and build explicit support for.

Why Rapise Makes SAP Web Testing Easy?

If we try to test SAP using open source tools like Selenium or even with just the standard web library in Rapise, the results are pretty poor. There are many reasons for this:

  • SAP uses dynamic and semi-dynamic IDs
  • They have many hidden layers
  • Text input and button clicks via synthetic browser events do not work

So for Rapise, we have created the new DomSAP library (the same approach we took for Microsoft Dynamics 365) and now it makes testing SAP easy:

  • With usage of the Rapise web application profiles we are able to use anchors to cope with hidden layers
  • WebAppProfile also helps to ignore pure dynamic IDs and consistently record a good attribute set
  • Post processing of IDs helps with element identification, e.g. //div[@id='__field12-Search'] is automatically changed to //div[contains[@id, '-Search']
  • We've added Navigator.NativeEvents flag, it is enabled by default in DomSAP and it instructs Rapise to use system level keyboard and mouse emulation instead of browser events. It works well.
  • We've enabled Self-Healing Mode in DomSAP by default. It helps a lot to deal with complex cases not explicitly supported by the DomSAP library and makes playback much more reliable.

Other Features

Selenium integration also works well with Rapise SAP web tests, since Selenium is capable of generating native browser events. So, you can perform recording and playback with Rapise's native browser connectors and initiate playback with Selenium (even on headless browsers).
All the general Web related features we have added to Rapise in the last couple of releases have been crucial for making SAP web support a reality. Using the current DomSAP library to be released in Rapise 6.3, an experienced automation engineer with some coding skills can test SAP web applications right away.

Next Steps

To make the testing of SAP Web easier by less technical, more functional users, we will be extending the new DomSAP library even further. We will be adding support for additional UI controls (fields, buttons, lists, comboboxes, grids, trees, etc.) as well as composing entire scenario blocks (e.g. create a purchase order, add line items) into a framework that will simplify creating scenarios for functional users. This is the same, proven approach we have taken with Microsoft Dynamics and Salesforce.

Phase 2 - Support for SAP GUI

In parallel with our work to improve and refine Rapise's support for SAP Web UI5, we are also working on adding support this year for testing SAP GUI. The challenge with SAP GUI is that it is not visible automatically with standard Microsoft libraries and technologies for enabling test automation.

But SAP does provide a Microsoft ActiveX / COM interface and built-in recorder that produces a basic automation script in the Visual Basic (VB) programming language. The initial work we have done is to simply convert the script into Rapise JavaScript and then allow execution in Rapise. For example, the sample script generated by SAP can be automatically converted into Rapise JavaScript:

So using Rapise today, a tester may either write a test using JavaScript and the COM interface or use SAP for recording and then convert to Rapise. Our plans include the option of converting SAP locators into native Rapise Objects that wrap the COM API to make it all available in Rapise Visual Language (RVL), and even using the SAP recording libraries to add SAP GUI as a built-in recording option within Rapise. This will be the topic of future blogs on SAP.

See Rapise in Action

In the following video you can see Rapise automating a sample SAP UI5 Fiori application:

This video illustrates the ease of playback of a recorded RVL script in Rapise.

Migrating to Rapise from Other Tools

One of the factors driving customers to use Rapise for their testing of complex ERP applications such as SAP and Dynamics is the lack of investment in the existing tools such as UFT and QTP that previously were used to automate a lot of SAP testing. So one key consideration is that we have also released last year a new migration toolkit for migrating your existing tests from UFT to Rapise.