Increase automation coverage;reduce potential inconsistencies between automated scripts and manual test process flows.
Continuing from my previous posts, let us see how we can increase the automation coverage and minimize inconsistencies between automated scripts & manual test process flows. A good way would be to enable business/functional consultants to contribute towards SAP test automation, in terms of creating automated test scripts, maintaining and executing them – with minimal learning curve.
This can be achieved by division of labor. The automation engineers would develop the automation framework and SAP specific reusable components. The functional consultants would use and organize them to automate test cases and process flows on the fly.
This approach can be implemented by developing a hybrid test automation framework that supports both data and keyword driven automation methodologies. In the data driven approach, the test data is separated from the test scripts and each test script can be executed iteratively for various data value combinations. The keyword driven approach involves coming up with action tables using keywords to interact with the application under test.
Keywords can be implemented in different ways. Usually, keywords are implemented at business function or transaction level. For e.g., “CreateSalesOrder” or “VA01” can be a keyword with associated parameters like order type, sales org etc. Similarly ReleaseSalesOrder can be another keyword with its input fields as associated input parameters.VA01, ReleaseSalesOrder and other transactional keywords can be organized in the appropriate flow to automate a business process like “Order to Cash”.
Each keyword has associated script developed in the language of the automation tool used. These scripts are developed by automation engineers. To automate a test case, we would use these keywords in a specific format & order and enter the test & verification data for the transactions via a GUI or spreadsheets, based on the framework implementation. Often spreadsheets are used because of their popularity. The automation engineers would also create execution controller scripts, parsing and reporting engines as a part of their framework. The controller script would execute the keyword test cases by invoking the automation tool code corresponding to the keywords it encounters.
Thus we see that once the framework has been developed, business consultants can start automating and executing the test cases with minimal knowledge of the tool or framework implementation. The automation engineers can get involved only if additional application specific functions have to be developed. Thus, with the participation of business consultants, automation coverage is increased.
In my next post, I will discuss on an approach to reduce the effort required to maintain the automated test scripts.