It has been a while since I have written here about our progress about making it easier to perform testing of SAP CPI. So I think it would make sense to give you an update of the progress of what is possible and how easy it is to use. Now we have added more cases you can test without having to write code.
The blog contains the following sections:
- How we test
- Mock Testing
- Secured Testing
- Testing with multiply endpoints
- SAP PI to SAP CPI migration of test cases
- Reuse your test case for Groovy Unit tests
I have created a video showing all the cases.
How we test
The way we have been testing has been to switch iflow into trace mode. Then let the user send some messages thru the system.
The Figaf Testing tool will then download all trace information, payload, properties, and header. Then it can use this information for the test case.
To run the test case the Figaf tool can send data to the HTTP, SOAP, or ProcessDirect (via an infrastructure iflow). Now all messages can be downloaded and then compared with the original.
It is possible to ignore specific steps or payload content.
Then you can see if a payload is changed correctly.
So the testing works pretty well if you have control over your systems and know they can handle the same input multiple times. If you are integrating to SuccessFactors and call the create employee API, it may not be possible to run the same API multiple times because the employee is no longer unique. Or there can be the problem that the Order you tested with no longer is in the system.
To get around this we have created a Mocking service. So you can automatically mock all interfaces. How do we do it? 50% magic and then 50% algorithms. The Tool creates a copy of the iflow but replaces in and outbound endpoints. So for each outbound interface that exists we replace it with a call to the Figaf Testing Tool. Then in the testing tool, we expose an endpoint that will respond with the payload for the next part. This is all managed by the Figaf Tool, that know when to update the mock services.
The mocking of services will allow you to perform testing of your scripts, routing, and process logic without having to do anything.
We would love to see this used for the customers that take advantage of SAPs Testing Preview tenants. So they can perform a full test before the tenants are updated. It will just be a little configuration and then you can run all your iflow test on the preview tenant.
Speaking of testing employee data or other confidential information it is important to keep private and not share with other people. We have solved this by masking all data in the Figaf Testing tool. So developers can only see masked data to “Daniel 79“ becomes “Xxxxxx 99”. Then developers are able to see, we’re in the documents there are any changes.
And since all endpoints will be mocked there is no problem with data being sent to remote systems. Developers should not have the option to view trace or other information on this tenant.
Testing with multiply endpoints
This is the newest feature we have added. In some iflows, you have multiply endpoints that you want to trigger and test. Which this Figaf Testing Tool automatically can see what is going on if you have multiply endpoints in an iflow. Then it will handle that kind of processing.
They can also be different endpoints that you want to invoke it via a Scheduler and HTTP. Then the tool is able to test both cases.
SAP PI to SAP CPI migration of test cases
Many customers are planning to run an SAP PI to SAP CPI migration. We are able to support the transport of test cases. So you can create test cases really simple from your old SAP PI/PO system and then run the test cases on your SAP CPI system.
This way you will be able to test the result of the message mappings are identical.
Reuse your test case for Groovy Unit tests
One big challenge is to enable users to be able to run your Groovy Scripts. We have added the option to take the test cases you already created and run them on your Groovy Scripts.
The Figaf DevOps tool can take all the input and output data for each groovy script in an Iflow and then enable you to run them really simple. You don’t need to spend a lot of time creating all the scaffolding around the execution of your groovy scripts.
Try for free
We do have a trial that is pretty simple to get thru that can help you see what the Figaf tool can help with in regards to SAP CPI. We do not support CF deployments yet. Signup here.