What is tested: PI/PO scenarios migrated to the pipeline concept
How to test a scenario migrated from SAP PI/PO to the pipeline concept in SAP Integration Suite.
Key points
The video takes a scenario migrated with the SAP migration tool and modified to support multi-mapping, with the sender channels removed because they are not needed for testing.
The goal is to prove that the migrated flow gives the same result as the old one: record messages in PI, turn them into test cases and run them against the new flows.
How do we test migrated scenarios from SAP BIPO to pipeline concepts? What are all the different steps that is involved in this? That's what we want to try to cover in this scenario. So I have migrated a scenario with SAP tooling. I've made some modifications. I've removed the sender channels because we do not need those, at least to do the testing here. And then we had a multi-scenario. i added structures to support that it can do multi-mapping and also here i removed the sender
Synchronizing the CPI system in Figaf
Fetch the migrated package into Figaf.
Steps
In the Figaf Tool, select the agent, your CPI system.
Click Synchronize. Figaf fetches the details of what is in the package. This takes a few seconds, and a full synchronization takes longer.
channels so to support this in figaf tool we will go in here into the figaf tool select the agent we will select our cpi system we would select synchronize and then this will fetch all the details around what is in this package and that takes a few seconds if you do a full synchronization it will take longer time to support this thing where we send in a message from from one system
Creating an iFlow chain for inbound and outbound processing
A chain lets Figaf send a message into one iFlow and test the result of the others as one scenario.
Steps
Figaf uses a concept called a chain when a message is sent in on one iFlow and processed on others. In the testing tool, create a new iFlow chain and give it a name.
Select the interface you want to send messages into: the inbound processing iFlow.
Select the outbound processing iFlows. You do not need to select the pipeline iFlows.
Select Create test case and save. The chain now exists and can be used in the scenario.
and deploy it on another we have created a concept in vgov called chain to create this we go in here we select create new iFlow chain sub 25 as the name of the iFlow is called and i select the interface i want to send messages into and this is the inbound processing here and then i have the outbound processing where i'll select these two iFlows here and we can then use them in the scenario so we say this is the inbound we select the outbound we do not select the pipeline files or all the pipeline it doesn't matter for our purposes we select create test case and we say save okay so now we have a chain that's called 25
Linking the PI ICO to the migrated iFlows
Connect the PI configuration to the chain you created.
Steps
Open PI to CPI migration > Overview and find the PI object, for example by searching for its namespace.
Select the object and click Link iFlows. Linking also supports chains, so select the chain you created.
Click Select. Now there is a mapping between the PI ICO and the SAP objects that belong to it.
Open it to see the different objects related to the scenario.
and that means we can go to our phcpi migration overview we can find our object here just search for namespace whatever you have of objects around i've already migrated this many times so it's already migrated but the thing we need to do is we need to go and say we need to select the object and we need to say link iFlows and the side flow also support chain so we need to select the chain here that we created which is then the one that would 25 25 is a common thing in this and then we say select here. So now we have a mapping between the PII crew and the SAP objects that is related to this. We can go in and see what are the different objects related to this, and it's these guys.
Recording messages from the PI system
Fetch real messages from PI and see the inbound and outbound messages of the scenario.
Steps
Send some messages through the scenario in PI.
In the testing tool, choose to record messages from the PI system and create a new test suite.
Choose to fetch future messages, and select the message groups. Check the warnings: if there are none, that is good, and if there are, find out what caused them.
If you have made changes to the ICO locking, you need to fetch future messages, the next messages that will be processed.
Figaf connects to the system and fetches the details. In the video the scenario has two inbound and three outbound messages.
Open the details. Here there is one inbound invoice, an invoice IDoc, and two line items that are created.
So that's okay. If we want to create a new test case from it, and we go into our way to fetch messages from the pi system so we have a scenario here we can send in some messages so that's all good and then we go here to our pi system we say record messages we create a new test suite that is a demo chain six uh we say fetch future messages uh we say choose select your message groups we can say see here the warnings is is there's no warnings which is good if there were we needed to find out what were the warnings that occurred and we can then select a message so you if you have made changes to the icon locking you obviously need to fetch future messages the next messages that will be processed here so now what the figaf tool is connecting it will connect to the system fetch details from this and then we have a scenario here so this has two inbound messages and three outbound messages and we just look at the details here we can see that there is one inbound that's the invoice and then we have an invoice idoc and we have two line items that's being created here one thing to note is that we have the stages here there should also be order expression and order expression here says zero and that means if i go
Order expressions and why they matter
Without an order expression, Figaf may not find the right messages for a test case.
Steps
The stages of the recording have an order expression. Here it says 0.
If Figaf did not fetch the messages, open the test case, then the test case configuration and the recording configuration, and add an order expression.
An order expression looks into the XML payload, finds the relevant details and uses them as the selection criteria, so that it picks the right message.
You also need the order expression on the test case recording.
here and create a test case it did work there is let's see here messages so it did fetch these details if it had not done that we would need to go into our test case here the test case configuration and recording configuration and added an order expression into this and the order expression will then enable us to go into the xml payload find relevant details and use those for our select criteria and say yes it's this we also need to have this on the test case recording because that's important there also okay so now we have created a test case and we can see we now
Migrating the PI test scenario to a CPI test case
Turn the recorded PI messages into a test case for the migrated iFlows.
Steps
After recording you have a number of test cases (60 in the video). Select the line you are interested in and click Migrate scenarios.
Add it to a test suite. It is better to have one test suite for PI and one for Integration Suite. You do not need the PI test cases once the scenario is fully migrated.
Choose that it is an iFlow or B2B scenario.
Do the mapping: select the iFlow (here the ERP one) and the message to process on, and where to fetch the messages from. This must be after the mapping has taken place. Do the same for the other flow.
have 60 test cases here we can go in and migrate our test scenario by selecting the line in interest here we will select it here and say migrate scenarios we will add it to to our test suite i do prefer to have test suite one one for pi and one for integration suites um you don't need the PI test cases, once you have fully migrated. And it says here it's an iFlow or B2B scenario. Then comes the mapping part where we need to say, okay, yes, we have an iFlow here that's called ERP. It is this message here. We want to be processing on this. And we go and say, where do we want to fix the messages? So we can select it here. We could have selected it down here. It doesn't matter that much. obviously it needs to be after our mapping has taken place so if we select it for this one and for the other one we also need to do it um and it will then select the cases we will be able to
Running the test case and fixing differences
Run the first test, fix the order expression and ignore differences that do not matter.
Steps
Run the test case. Testing is not always able to find the right messages the first time.
If the result shows unexpected messages, it is the order expression. Add it to the test case and run again. Once Figaf has chosen the messages it cannot easily change them, so sometimes you need to migrate the test case again.
Check the diffs. Extra payloads around the messages can be ignored, or you can put a star in the properties.
A difference in a timestamp can also be ignored. Then process the comparison again.
The test case is now successful. Check the test configuration for problems.
For how messages are processed, ICO locking is preferred, because it gives better and less intrusive options for managing the scenarios.
to process this and we can go and say hey let's run this test case let's see if it's successful it may not be there's the area around testing is that it's not always the case that it's able to process things correctly find errors correctly and we can now see here that it actually gets some unexpected messages and this is because we we and we can see it's the auto expression so one them is is an error that's okay so that's diff that's just the timestamp that's different we can go and ignore that but for now the main part is we need to add this auto expression also here to our test case and that means we need to rerun it because once it's figured out what are the messages you cannot easily go and find it so sometimes you would need to re-migrate the test cases other times it's okay you find it but now it seems like it found the right messages for each of these two scenarios um we can go and check the diffs here and this is because then there is a lot of extra payloads around this we can just say let's just ignore those or we could in the properties just put in a star field so now we have done those we will do a comparison again it will then check all the messages is there okay and we can see we have a diff here and the diff is then the timestamp we can go in and say let's just ignore that and process our comparison again and we now have a successful test case so this is how you create a test case with the take it from pi migrate it um and then run it and here it's it's important once you do the the test configuration that you go in and obviously check is there if there's any problems you need to check is how do we approach message processing normally i would prefer icolocking because that give us some better less intrusive options for for managing the scenarios okay so now we've seen it with how you would use the the sap migration tool there as i see there
The same scenario with the Figaf migration tool
Migrate the scenario with Figaf in one step, with the custom mapping and receivers.
Steps
Compared to the SAP tool there is a lot of manual work. With the Figaf migration tool, select the profile type, for example pipeline all, and the system to run on.
Enter the partner and a name, and choose whether to deploy after migration.
If the sender is IDocs, choose that you do not want the inbound iFlow.
Choose the custom mapping you created. For the SFTP receivers you can set the receivers, different names and different pipeline flows.
Click Check, then Migrate. Figaf does the full migration with pipeline scenarios and everything that is supported, creates the Partner Directory entries and synchronizes.
Open the iFlow to see that it has been deployed, with the multi-mapping structure around it.
is a lot of manual efforts in it if we wanted to migrate the same scenario with uh figaf we could go in select profile type pipeline all uh which system we want to run on check it uh we will put in send us 25 let's just put 26 here let's 26 here partner it is 26 single xsmt deploy after migration we can say whether or not we do not want the inbound iFlow which is obviously the case if you have ico or sorry i've idocs you don't want that and we have here the the different systems we have created a custom mapping that we want to use when migrating this sftp systems we can specify what are the receivers we have here do we want different namings on them different pipeline flows uh message we can structure all of those scenarios we have all the content here and we can just say check and migrate so this will then do the full migration with pipelines scenarios everything that is supported obviously it will create the pattern directory entries synchronizes so we can see what is inside of the the tooling we can see it's created all of these different scenarios and just now we can open this iFlow here we can see it has been deployed hopefully and we can see that's the multi-mapping structure around it
Migrating the test cases to the Figaf-migrated flow
Reuse the same test case for the new flows and see why it fails.
Steps
Select the same test case and choose Migrate test cases, then Migrate to CPI iFlow. Add it to the test suite under the chain.
The mapping already comes with the correct values. You can change it if you want to look at the specific messages somewhere else.
Click Run and open the Figaf message browser to see how the message is processed.
In the video, there is an SFTP error (passive mode), so the flow is probably not working and that problem should be fixed. After that you can run the test again and get the results.
deployment is done and then we just go back we select this the same test case we select migrate test cases we selected say migrate to cpi iFlow add it to our tests test street under chain here and here we can see it already came with the correct mapping we can go in and change it If we want to and find a different place we want to look at these specific messages in. But for now, I think it's okay. And let's just see run. We can see that it has processed. We didn't run it. We can see the test case. We can see that it's being processed. If we want to see what goes on, we have this OpenFigure message browser. Here we can see how the message is being processed. and we can see that there are some errors there's some passive sftp modes that comes out for this and that means this one is probably not working we should then obviously fix the problem
Wrap-up and the free Figaf Migration Edition
Testing a migrated scenario is easier with the Figaf tool.
Key points
The Figaf tool gives more complete migrated scenarios and takes less manual effort than the SAP tooling.
You can get started with the free Figaf Migration Edition.
and then we will be able to run it and we would get the results back but it is a lot easier to manage this with the gov tool as you see and it has some more complete migrated scenarios i hope you like this and want to try it out you can use the fee free figure of migration edition to get started on uh so good luck getting started with the figure tool