How to: Create a CBTA test configuration for an SA...
Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
CBTA (Component Based Test Automation) is an integrated tool into SAP Solution Manager 7.2 for creating automated test scripts for various UIs.
For a lengthy period, SAP GUI (Graphical User Interface) and WebDynpros were the default interfaces for SAP-Applications. This changed after the introduction of SAPUI5 and FIORI – with the modern and flexible framework SAP created a completely new and appealing frontend for their applications.
Now the importance of testing FIORI applications has increased with that trend. CBTA also supports the frontend scripting of those FIORI Applications.
The overall supported UI technologies are the following:
UI Technology
Description
SAP GUI
UI Technology used by SAP Transactions
SAP GUI content displayed in MS Internet Explorer
Web / Plain HTML
UI Technology used by non-SAP applications
WebCUIF
UI Framework used mainly SAP CRM Web UIs.
SAP UI5 & FIORI
UI Framework used by SAP UI5 and Fiori apps
Unified Rendering Light Speed
(LS)
UI Framework common to SAP Applications such as:
• Web Dynpro Application (ABAP)
• Web Dynpro Applications (Java)
• SAP GUI for HTML
BSP
Applications based on Business Server Pages
Java Web Dynpro
Layer formerly used by Java Web Dynpro applications.
In this blog I want to share how the process of scripting a FIORI Application looks like. I will show you how you can add a FIORI Executable manually to the Solution Documentation and start subsequently the scripting with CBTA.
Preparation: Add a FIORI Executable
In case the needed SAP FIORI Application is not in the execution library, you can easily add it manually to your solution. Therefore, navigate to the SAP Fiori apps reference library and search for the app by name, application or industry. In our case we’ll look for “Create Incident”.
It is important that you select the correct backend product. As a next step navigate to the “IMPLEMENTATION INFORMATION” tab and open the selection “Configuration”.
In the configuration section you will find some technical information about the application. For the executable we need the information listed in the section “Target Mapping(s)”.
Now we have the necessary information, to add the executable to the execution library. Navigate to the Solution Documentation --> “Execution Library”. Perform a right click in the Elements Area of the respective executable folder and select the option “New Executable Element”.
A pop-up window will appear, where we need to maintain the fields with the information from the Target Mapping(s):
Library Element Type: Fiori Application <Exec. Orig.>
Name: Process step name/App name and the App ID e.g. Create Incident (F2128)
Object: The Semantic Object e.g. Action
Action: The Semantic Action e.g. SMCreateIncident
The SAP FIORI Executable is now created in the execution library and can be used for scripting.
Create a Test Configuration
After adding the executable, we can now use it in an automated CBTA Script (Test configuration). For this, we need to navigate to the respective process step (in our case: “PS_Create_Incident”) and add the executable before creating a test configuration. Perform a right click in the elements area and choose “New” --> “Executable”. Search for the recently added executable and click on “OK”.
After adding the FIORI Executable in the correct Solution Documentation node, we are prepared for creating a test configuration. Therefore, perform a right click in the elements area again and choose “New” --> “Test Cases” --> “Test Configuration (Create)”. Fill out the necessary fields and click on “OK”.
Make sure that all the necessary fields like “Target System”, “Executable” and “Test Profile” are filled out. In case they are not, navigate to “Goto” --> “SUT Management” and check the sections “Technical Destination” and “Business Destination Enhancement Details”.
Since CBTA supports both the recording and execution with the Chrome-Browser, change the CBTA Settings according to the browser you are using before starting recording the script. Please see the following video about how to do the recording.
Recording Demo
Execution Demo
That's how easy it can be - so try it out yourself!
Thanks for the info! Are there any specific guidelines when it comes to Cloud products, other than creating a custom Login Schema for SAP ID Service? (eg. C/4)
Thanks for the example!
I tried it out, but found out that our Fiori apps behave quite slow and CBTA is automatically clicking faster than the application appears at the screen.
Do we have to add "wait commands" in the script or is there any better option to wait until the screen is completely available?
This is good info. I had created a few FIORI scripts 2 months back and those worked fine. But today when I tried to re-execute those, these failed due to the change in URI of the fields. From what I hear, every time there is a refresh the URIs change. Is there any solution to this issue? We need to run these scripts every month and if they keep failing due to change in URI so often, it becomes cumbersome to edit the URI using Object Spy. Have you come across this issue, if so, could you please share if there is a solution for this? we are using CBTA version 12 and have been done with SP8 upgrades a few months back. Thank you in advance for any info you can share.
I have tried to do the same steps however, i am getting the error - App could not be opened either due to an incorrect SAP Fiori launchpad Configuration or missing role assignment.
Please let me know if you have any idea on how to solve this, please let me know
This is sometimes the case, when your test user (SolMan: Test Profile) does not have the necessary authorizations for the application you want to test.
This may help; you need an additional LCG for the fiori front end server then map the 2 LCGs. The mapping between the two LCGs is established using a BAdI implementation of BAdI BADI_SMUDE_ADMIN_CENTRAL_SYST.
We already have 2 LCGs defined and also implemented this BADI.
But this BADI is for SolDoc, not for Test Suite.
We have issue with Test suite, if we create CBTA for Fiori Transaction, it is launching S4 backend system instead of front end.
The alternative is we use Fiori front end LCG as a SUT in CBTA, but in that case we have to map all the Fiori transactions defined in SolDoc to Fiori Front end LCG.
I am not sure what will be the future impact if we link SolDoc with ChaRM.
Thanks,
Piyush
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.