(DV-2011) Introduction & Recommendations
When using and upgrading a SAP system, an extensive amount of manual testing is required, which consumes time, resources, and manpower. The main advantages of automated testing are:
- Reduction in time to perform the necessary tests
- Time saved can be reinvested into higher priority projects
- Extensive and complete testing
One solution that can provide the automation of testing is our tool Validate. Validate by Datavard is a tool for automated tests in frontend testing based on WebTemplate testing and backend testing for various scenarios.
Frontend Testing can be used for the Web Template regression testing to ensure all basic functionalities remain functional despite the changes in the development. Backend Testing offers the following functionalities:
- Test query outputs on a large scale – Query testing is based on the idea of using a before image and an after image. These images contain results of all the selected queries/bookmarks, which are then stored for later comparison. The after images and before images are then compared to check if both results are the same. The testing of the same queries between two different systems is also supported by the use of RFC functionality.
- Test InfoProviders content – Involves the Execution of ListCubes with specified characteristics selections. All key figures are always returned while settings for the DB aggregation, Read NLS, MAX Rows, and Number of Hits can also be applied. Results of ListCube execution are stored as before/after images and are compared for similarity. Testing the same queries between two different systems is also supported by the use of RFC functionality.
- Test of transformations – is for the Generation of Data Transfer Processes (DTP) and their execution. From the loaded data, the before and after images are created for comparison. By executing the same load two times you can verify if these were performed correctly or if there were any changes made in the transformation logic (changes in lookups, runtimes, and others).
- Test table content – Involves the creation of data images for database tables with specified fields. These fields are used either as characteristics or aggregated key figures columns; the images created are stored and compared for similarity. The testing of the same tables between different systems is also supported by the use of RFC functionality.
- Test report outputs – Involves the execution of reports with/without variants and the gathering of their outputs that are saved in the spool.
Backend Testing can be used to ensure that after changes in the systems (i.e. system upgrade, migration) were made the data remains unchanged.
Prerequisites and installation
The Validate tool is supplied to the customers in the form of transport requests with all available functionalities included. DataVard’s Reuse Library is also provided together with Validate and is necessary for the customers that did not receive it yet with other DataVard tools.
All users working with Validate should have authorization “DVD_VALIDATE” assigned, which is included in Validate installation transports.
Validate data images contain information from all tested InfoProviders, Queries, and Tables. Customers should be aware that data in Validate are by default unprotected in terms of authorization access. See the (DV-2011) Settings section for more information on how the data can be protected from unauthorized access.
Validate Restrictions
Validate Section | Prerequisites |
General | Windows 7, Windows 8.1, Windows 10 machine SAP BW 7.0 to 7.5 (Recommended 7.01 or higher) |
Dashboard | Internet Explorer 8 or more (9 or more recommended) |
Test Case Document, Status Document | MS Word (Office 2007 – Office 2016) |
Test Plan Report | MS Word (Office 2007 – Office 2016) |
Web Template Test Case | Internet Explorer 8 or more with:
MS Excel (Office 2007 – Office 2016, 32-64 bit) Web Templates newer than 3.5 version |
Web Intelligence Test Case | Internet Explorer 8 or more with:
MS Excel (Office 2007 – Office 2016, 32-64 bit) SAP BusinessObjects BI Platform 4.1 Support Pack 6 |
ListCube and DrillDown Test Case | For NLS data testing, SAP 7.3 or more needed |
DTP Test Case | Transformation with source: InfoCube, DataSource, and DSO are supported Transformation with the target: InfoCube, DSO, and WODS are supported |
Frontend Testing | Scripting enabled on the server for the ‘sapgui/user_scripting’ parameter Activated scripting for SAP GUI without notifications Disabled SAP GUI security settings on the test execution machine |
BEx Analyzer Testing | MS Excel (Office 2010 – Office 2016, 32 bit) BI AddOn 7.X (based on 7.40) BI AddOn 7.X (based on 7.50) Excel add-in BExAnalyzer.xla added to Excel Add-ins |
Validate contains tables that are client dependent. Therefore it is required that the Validate transport is imported into the system using the same client where the users will be working with the tool.
Validate Terminology
In this section, the basic terminology used in the Validate tool is described for a better understanding of the following chapters.
Test Case – is a basic testing scenario, and the Test Case is a reusable component used in Test Plans, where the Test Cases are executed. See the chapter about Test case types for further information. Each Test Case is a schema of steps, while steps are defined by variant/variants. Example Test Case 1:
- Type: ABAP Test Case
- Schema: Execute program CONVERSION_CHECK
Example Test Case 2:
- Type: ListCube Test Case
- Schema: Create Images for InfoProviders and compare them
Test Case Variant – is the definition of a Test Case step with values that enable the Test Case execution in a Test Plan. The Test Case can be defined by one variant or by multiple.
Example Test Variant 1:
- Variant: Execute program CONVERSION_CHECK with standard program variant ‘ALL’ (selection screen options)
Example Test Variants 2:
- Variants: InfoProvider ZDC_CUBE1, InfoProvider ZDC_DSO1
Test Plan – specifies the combination of Test Cases that can be executed. Test Cases (with variant/variants) assigned to Test Plan have their execution status.