Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

eCATT: test configuration execution error with multiple variants

Former Member
0 Kudos

I built an ecatt script for ME21N. This executes fine when I run it alone with multiple data sets provided 1 at a time with each test run.

Thereafter, I pulled the script into a test configuration, added a couple of variants (via test data container) and kicked off execution. The first run with the first variant was successful.

The second run fails however with the error message -

"Screen Check Error: Transaction Code Expected:ME21N Current:ME21N,Program Expected:SAPLMEGUI

Current:SAPMSSY0,Screen Expected:14 Current:120. Probably an error in previous SAPGUI / Processed Screen"

What am I doing wrong? My ME21N recording ended with capturing the PO generation message. Did I need to come back to the SAP Easy access screen before ending the recording?

Follow up question - if I now need to modify my test script to add that last step of clicking the back arrow and returning to SAP Easy access screen - how do I do this? Would I need to record the entire script again from scratch?

Thanks!

1 ACCEPTED SOLUTION

AjayHS
Product and Topic Expert
Product and Topic Expert
0 Kudos

Let me answer your query :

What am I doing wrong? My ME21N recording ended with capturing the PO generation message. Did I need to come back to the SAP Easy access screen before ending the recording?

Best practice to always come back to SAP easy access screen to end the recording. Please try this.

Reason you are getting the error is due to mismatch in the screen during execution which you can clearly read in the error message , at run time ecatt is expecting a screen which is not appearing thus the error.

You can run in foreground and see it .

Follow up question - if I now need to modify my test script to add that last step of clicking the back arrow and returning to SAP Easy access screen - how do I do this? Would I need to record the entire script again from scratch?

Which driver are you using to perform the recording TCD or SAPGUI.

Both cases you dont need to re-record ,

TCD - you need to find at what point you need to add the additional DYNPRO then expand your recording add an additional DYNPRO and determin the screen num, prog name etc from technical information of the correpsonding screen where you want to record the button. Once you add the DYNPRO then you need add under DYNPRO clicking of the button. Please try it out.

SAPGUI is bit easy to record to insert, split your SAPGUI recording then go to the SAPGUI command after which you need to add recording of pressing of the button then place the cursor after that SAPGUI and go to pattern and select SAPGUI INSERT , before this you need to keep the screen of the application open at that point (screen) then perform the recording and end the recording.  After SAPGUI command is inserted split this again and remove resize working pane recording.

Hope it helps.

Thanks,

Aj

6 REPLIES 6

AjayHS
Product and Topic Expert
Product and Topic Expert
0 Kudos

Let me answer your query :

What am I doing wrong? My ME21N recording ended with capturing the PO generation message. Did I need to come back to the SAP Easy access screen before ending the recording?

Best practice to always come back to SAP easy access screen to end the recording. Please try this.

Reason you are getting the error is due to mismatch in the screen during execution which you can clearly read in the error message , at run time ecatt is expecting a screen which is not appearing thus the error.

You can run in foreground and see it .

Follow up question - if I now need to modify my test script to add that last step of clicking the back arrow and returning to SAP Easy access screen - how do I do this? Would I need to record the entire script again from scratch?

Which driver are you using to perform the recording TCD or SAPGUI.

Both cases you dont need to re-record ,

TCD - you need to find at what point you need to add the additional DYNPRO then expand your recording add an additional DYNPRO and determin the screen num, prog name etc from technical information of the correpsonding screen where you want to record the button. Once you add the DYNPRO then you need add under DYNPRO clicking of the button. Please try it out.

SAPGUI is bit easy to record to insert, split your SAPGUI recording then go to the SAPGUI command after which you need to add recording of pressing of the button then place the cursor after that SAPGUI and go to pattern and select SAPGUI INSERT , before this you need to keep the screen of the application open at that point (screen) then perform the recording and end the recording.  After SAPGUI command is inserted split this again and remove resize working pane recording.

Hope it helps.

Thanks,

Aj

Former Member
0 Kudos

Thanks Ajay for the detailed response. I did go in and add the steps to back out to the easy access screen but that did not seem to be the root cause.

After further debugging, I was able to realize that the input data in the 2nd run was causing an additional pop up which had not been accounted for in my previous recording. So I went back and recorded for that pop up which seemed to take care of the issue.

During this correction process, I learned a few new things which I wasnt aware of before:

1. The scripting had been done via SAPGUI. You can edit this using the SAPGUI attach option.

2. When recording this way, you need to pay attention to the ResetGUI and sessionID values. Session ID should match previous recording, while ResetGUI should not be 'X'.

You probably already knew all this, but it took me a while to figure out and get my script running successfully.

On a separate note, you mention in your response to remove "resize working pane recording". What is the relevance of this command?

Thanks!

AjayHS
Product and Topic Expert
Product and Topic Expert
0 Kudos

Yes Archana :

When recording this way, you need to pay attention to the ResetGUI and sessionID values. Session ID should match previous recording, while ResetGUI should not be 'X'

You need to set the ResetGUI to 'X' .

Please also remember that if you do a SAPGUI attach there is no need to do ResetGUI for this SAPGUI command , ResetGUi is set to 'X' only for the very first SAPGUI command.

Withregards to resizeworking pane if you split your SAPGUI command you will find one of the (probably the very first) SAPGUI command containing resizeworking pane which basically sets the size of the target system whose connection is opened, you dont need this command as it will resize the screen size in the middle of execution and there would be possibility that your script might fail as the control object eCATT is looking for is not reconginzed on the resized screen and this operation also reduces the execution speed a bit, as its not needed can be removed.

Hope it explains let me if not .

Thanks,

Aj

Former Member
0 Kudos

got it. thanks Ajay!

0 Kudos

"Best practice to always come back to SAP easy access screen to end the recording. Please try this."

I have a very similar problem with my test configuration of chained scripts. I do not understand how to come back to the SAP Easy Access Screen at the end of the recording. Is there something like a keyboard shortcut to go back? Because if you try to reach the "home" screen via the GUI or a transaction, the recording (TCD) is immediately cancelled and the home screen is obviously not recorded.

And for trying to add the Easy Access Screen to my existing recording: Where exactly should you put it, after the final messages or before?

AjayHS
Product and Topic Expert
Product and Topic Expert
0 Kudos

in the TCD Interface, you can add another row at the end with OK code of clicking on back button.

This should work, or you can also use the SAPGUI recording instead of TCD recording.

Thanks,

Aj