First, make sure to have gone through the prerequisites for SAP testing. Refer the below link -
As you see in the link, you can have a maximum of only 50 virtual users on an agent for a SAP GUI test.
Beyond that, failures such as "connection errors", "SAP GUI Component not found" and "Invalid arguments" will start occurring during playback.
This is a result of how SAP has implemented the test automation API in SAP GUI.
Depending upon the script's complexity and the number of GUI components that are part of the script's scenario, it is likely that a script can be played back for only a lesser number of users. These limitations arise out of the SAP automation framework and not Rational Performance Tester (RPT) tool itself. The limitation holds good for other testing tools as well.
Since the limitation is on the on number of users per engine Java process, I tried setting up multiple agent engines in the same physical machine. This involved creation of multiple host aliases in the agent machine and then adding those hosts as locations to be used in user groups (Vertically Scaling an agent machine).
I personally saw that high capacity machine with multiple Agents did not resolve the issue.
Testing using many low end machines would be better than having one high end server with multiple agents.
Below are some recommendations while load testing a SAP GUI
As per the below tech-note, run the Agent as a process –
Use many basic Microsoft Windows PCs as agents
Run 2 locations on each machine
Try to keep the SAPGUI tests as simple as possible
Try to run as many SAP transactions through the JCo (Java Connector Objects) interface (called SAP batch test in RPT) as possible.