Blog > From the business document to interface test case

From the business document to interface test case

Michał Lubczyński SAP Integration Consultant
icon__calendar 2017-10-20

Int4 IFTT – automated testing in the SAP Integration area

Automated testing of SAP integration is significantly different than system testing based on user interface playback. For such testing we created Int4 IFTT. In this and following blogs we would like to bring you closer to the concepts how it works and helps in the SAP projects.

SAP ERP is constantly a heart of IT systems supporting core business operations. In most cases it is integrated with dozens or hundreds of external or internal systems. Using SAP PI/PO or SAP Cloud Platform Integration companies integrate their processes and data between 3rd party applications, on-premises solutions and cloud apps. Integration plays important role in IT operations and looking into near future digital disruption world it would be even more important.

Challenge of testing in SAP integration

Testing of integration is a challenge as the principle of interface design are reusable components. The key to lower the TCO is re-use and build connections to new systems from existing blocks. This technique is very efficient but requires careful regression testing in many phases of SAP projects or during day to day system maintenance.

The solution is test automation. To make it easier we created Int4 IFTT. It has two major features:

  • Tests all interface components across SAP Landscape: middleware and backend interface logic until creation of final documents
  • Allows extremely fast creation of test cases based on existing documents

Testing application interfaces based on document level means that all the processing layers need to be verified. Below diagram shows the end to end testing of application interfaces in SAP landscape. This consist of testing the processing in the middleware platform as well as testing the SAP Backend (like AIF logic):

 

Benefits of using Int4 IFTT

 

Int4 IFTT supports testing of interfaces in both directions – to SAP (inbound) and from SAP to the external system (outbound). The above diagram shows the inbound direction. In the nutshell the inbound test case is an original message received from external system and the final document created in the backend (for example sales order). During the test execution the external system is virtualized by injecting the message directly to the middleware. This will trigger regular interface processing and a new final document should be posted in the backend. The test is validated by comparing newly created document with a reference one.

As mentioned, Int4 IFTT supports all interface scenarios like inbound, outbound and synchronous. In addition it could also test whole business processes where the interface steps are mixed with recorded and played back manual actions. Single run can contain multiple test cases and processes and can be even executed in background.

The second highlighted feature of Int4 IFTT is a quick test case creation. In our opinion this is a must for the test automation tools. A lot of implementations failed due to laborious process of test case creation. After initial implementation a limited number of test cases was created and more important the test cases were not updated after implementing changes. Such tools became useless.

Int4 IFTT is tailored just for SAP integration testing and this gives benefits comparing to generic end to end testing suites. It is deeply integrated with SAP middleware platforms (currently SAP Process Orchestration and SAP Cloud Platfrom integration) and ABAP backend business systems (like SAP S4/HANA). To create a test case it is just enough to point a valid GUID (message identifier) of the middleware message. The GUID can be searched up even without logging to the middleware platform. It can be populated directly from int4 IFTT based on the business values (like Purchase Order number). The rest of test case creation will be done automatically due to one time configuration. The configuration is prepared per each interface and contains among others the validation rules.

On the grounds of above, knowing correct business documents created by interfaces, the hundreds of test cases can be created in the matter of minutes. Thus this is easy to prepare a very solid test case collection with all possible variants of scenarios handled by the interfaces. Later on they can be executed fully automatically even on the daily basis in the background job and secure interface management process during various occasions.

Introducing a process and tools for test automation particularly in area of SAP integration is very beneficial. It can generate significant savings comparing to the traditional testing. One of many reasons of savings is not engaging third party resources or specialists from multiple areas anymore. The tests can be executed and validated automatically.

The savings are obviously expressed in money but also a lot of time is preserved. This time can be dedicated to other important but not urgent matters as with test automation the number of urgent ones should be decreased.

Automatic testing brings up closer the Agile and DevOps ideas. As the cycle is quicker, more changes can be implemented in the same time and allow IT systems to adopt faster to business needs. Int4 IFTT can be used in various SAP projects like roll-outs, S4/Hana, EDI or AIF migrations, upgrades and regular system maintenance.

The final advantage is risk reduction. We all know that nothing can beat the feeling when the changes introduced to production system went smoothly without any surprises because they were properly tested.

Michał Lubczyński SAP Integration Consultant
SAP integration consultant since 2016. Experienced in end-to-end PI interface configuration, AIF, IDoc business scenarios, and banking interfaces. An acquaintance of SAP Material Management and Sales and Distribution modules. Implementation consultant of Int4?s automated interface testing solution - Int4 IFTT. Strong SAP PI/PO skills. Conscientious and goal-oriented team player, good at communication and building relationships.