What is the difference between Test Steps Parameters and Test Data Containers?
Test Data Containers are available within SAP Solution Manager for years now. Test Steps Parameters are a quite new feature which became available as part of Focused Build (ST-OST) SP06.
In this blog post you will learn what these two features have in common and what differentiates them.
Let’s start with a short description of both objects.
Test Data Containers
A test data container is a reusable data object with a set of user-defined parameters which can be maintained independently from a test script.Test data containers are mainly used by test automation tools like SAP CBTA or SAP eCATT.
Also 3rd party test automation tools like Worksoft Certify may use the test data containers.
Together with an automated test script and a system data container, a test data container forms a so called “test configuration”.
A usage of Test Data Containers in the area of manual testing is possible, but not that common.
Test Steps Parameters
With the Test Step Parameters the manual test tool Test Steps test script separates the test instructions for the tester from the test data that is used during the test execution. By this, the normally more stable test script can be maintained independently from the often more dynamic test data in a Test Steps test case.
For technical details of both Test Data Containers and Test Steps Parameters please see the references at the end of this blog.
Things in common
Both a Test Data Container and the Test Steps Parameters are entities that encapsulate data.
This is an example of a Test Steps Parameter set of parameters and values.
Please note, the details on how this is created and set up is explained in the blog that is referenced in section “Further Information” at the end of this blog posting.
In the screen shot above some values were added to a parameter called “Plant”. The values were distributed to several test packages and testers.
And here you see an example of Test Data Container. Again you see parameters and values. Different Test Data Containers can be assigned to different test packages, however it is not possible to distribute the values to single testers.
The maintenance of Test Data Containers is done within transaction SECATT.
Both a Test Data Container and the Test Steps Parameters can be used for manual testing.
Please see here a simple example how the usage of a Test Steps Parameter looks during runtime (i.e. test execution time) for a manual tester:
The actual parameter is substituted with the prepared value, based on the actual test plan/test package and the actual tester.
Let us now look at a Test Steps test case used with a Test Data Container.
Data within an Test Data Container can not be used to substitute parameters during test execution time. Here we have a more generic description referencing the attached Test Data Container.
Please note the small “1” for tab “Test Data Set”. If we open the tab “Test Data Set”, we find an attached object.
To access the actual test data that is needed for the test execution, we have to open the Test Data Container. This takes us to a SAP GUI view that shows us the test data.
As you might already have noticed, this is the well-known Test Data Container view in transaction SECATT. You now have to keep in mind the needed test data and go back to the My Test Execution view of the Test Steps test case in order to proceed.
Having said this, we now come to the…
As the usage of SECATT for maintenance activities of Test Data Containers indicates, Test Data Containers are mainly used for test automation scripts. Together with the actual test script and a system data container they form a so called “Test Configuration” within the Test Automation Framework with the Test Suite of SAP Solution Manager 7.2.
As you might have already noticed above, a Test Data Container is quite unhandy when it comes to manual testing. While using the regular manual testing features of the Test Suite (i.e. having a test script in a Word or Excel document) or even while using the new Test Steps functionality, there is no real integration between the test script (i.e. the actual instructions for the tester of what to do) and the test data.
The test data maintenance for Test Data Containers is done within a SAP GUI (or WebGUI) interface with transaction SECATT. This transaction is not that intuitive. More details can be found here. In general, the data maintenance is quite rigid with a Test Data Container. Especially, values in a Test Data Container can not be distributed to dedicated testers.
In contrast to this, the Test Steps Parameters integrate better in the Test Steps functionality of SAP Solution Manager. The value of the parameters are distributed to the Test Steps test cases of the testers when they start testing. The distribution of the data can be orchestrated based on test packages and testers that are assigned to these test packages.
As for now, there is no connection at all between the Test Steps functionality and the Test Automation Framework of the SAP Solution Manager 7.2.
The user interface of the Test Steps Parameters is based on Fiori and comes with lean screens.
When to use what
As already stated, Test Data Containers can be used with manual test cases as briefly shown above, however they are more useful when used as input for (mass) test data in test automation scripts. For example, the automated test scripts then can easily use a new test data set for each script iteration.
Test Steps Parameters are used together with the new manual test tool Test Steps. They should be used when there is a need to clearly separate between more static test case instructions and more dynamic test data. The test data can be maintained independently from the manual test scripts. The test data is then distributed to the test case as soon as the testers start their testing activities.
With Test Steps Parameters, SAP now offers for manual testing a way to get rid of the Test Data Container technology and to avoid the usage of lengthy Excel sheets for documenting test data.
Test data can now be documented separately from the Test Steps test cases by the test case creators. But when it comes to the test execution, the test data is seamlessly integrated into the test case descriptions with no additional efforts for the testers.
A comprehensive description of the Test Steps Parameters, their definition and usage, can be found in this blog post.
This document provides the detailed steps for both the usage of test data in regular manual testing and also for the usage of test data with Test Steps.
A good starting point for test automation (here: SAP CBTA) can be found in this blog post.