cancel
Showing results for 
Search instead for 
Did you mean: 

Details of Unit Testing and tools used

Former Member
0 Kudos

Hi Gurus,

Please can you send me all the details of Unit Testing with real time examples ie how it is done in Real Time along withTools used and the functions and issues.

Regards,

Farhan.

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi

Unit test issues

The unit tools test all SAP development work that handles business object processing for the connector. Also, the unit test tools enable you to test the interaction of your work with the ABAP components of the connector. The test tools allow you to test your development work as an online user (real-time) only.

Note:

It is important to understand the differences between testing the connector as an online user and testing the connector as if operating as a background user.

The differences between testing the connector as an online user or as a background user are described as follows:

  • Memory--When testing a business object, the connector must log into the SAP application.

The connector runs as a background user, so it processes in a single memory space that is never implicitly refreshed until the connector is stopped and then restarted (therefore it is critical in business object development to clear memory after processing is complete). Since you are an online user, memory is typically refreshed after each transaction you execute.

For more information, see Developing business objects for the ABAP Extension Module. Any problems that may occur because of this (for example, return codes never being initialized) are not detected using the test tool; only testing with the connector will reveal these issues.

  • Screen flow behavior--Screen flow behavior is relevant only when using the Call Transaction API. The precise screen and sequence of screens that a user interacts with is usually determined at runtime by the transaction's code. For example, if a user chooses to extend a material master record to include a sales view by checking the Sales view check box, SAP queries the user for the specific Sales Organization information by presenting an additional input field. In this way, the transaction source code at runtime determines the specific screen and its requirements based on the data input by the user. While the test tool does handle this type of test scenario, there is a related scenario that the test tool cannot handle.

SAP's transaction code may present different screens to online users versus background users (usually for usability versus performance). The test tool only operates as an online user. The connector only operates as a background user. Despite this difference, unit testing should get through most of the testing situations.

Generally the following testings are carried out in testing server

1. Individual Testing ( Individually which we've created)

2. Regressive Testing ( Entire Process)

3. Integration Testing ( Along with other integrated modules)

The 3 types of testing is as follows:-

1. Unit testing (where an individual process relevant to a SD or MM etc is tested)

2. Integration testing (where a process is tested that cuts across all areas of SAP).

3. Stress testing (where lots of transactions are run to see if the system can handle the data)

<a href="http://www50.sap.com/businessmaps/6D1236712F84462F941FDE131A66126C.htm">Computer Aided Test Tool (eCATT)</a>

<a href="http://www.davisworld.org/presentations/unitTests.pdf.">UNIT TESTING</a>

Former Member
0 Kudos

Hi Farhan,

Testing : the core team members along with endusers will test whether the postings done in SAP is resulting as per the requirements of the organisation. They will test whether the output documents such as purchase order, invoice document are printed in the required format and showing the correct data.

Unit testing is refer to the module which are going to implement. SD, MM, FICO etc. there will be test script based on that testing will be performed.

Integration testing will be cross the modules. MM-SD-FICO for example. Integration testing is also called SIT ( System integration testing)

Testing mathologies and types: there are 6 types of testings:

1. Unit Testing

2. System Testing

3. System Integration security Testing

4. Performance Testing

5. User Acceptance testing

6. Regression Testing

Unit testing is done in bit and pieces. Like e.g. in SD standard order cycle; we do have 1-create order, then 2-delivery, then 3-transfer order, then 4-PGI and then 5-Invoice. So we will be testing 1,2,3,4 and 5 seperately alone one by one using test cases and test data. We will not be looking and checking/testing any integration between order and delivery; delivery and TO; TO and PGI and then invoice.

Whrereas System testing you will be testing the full cycle with it's integration, and you will be testing using test cases which give a full cyclic test from order to invoice.

Security testing you will be testing different roles and functionalities and will check and signoff.

Performance testing is refered to as how much time / second will take to perform some actions, like e.g. PGI. If BPP defination says 5 seconds for PGI then it should be 5 and not 6 second. Usually it is done using software.

Regression testing is reffered to a test which verfies that some new configuration doesnot adversly impact existing functionality. This will be done on each phase of testing.

User Acceptance Testing: Refers to Customer testing. The UAT will be performed through the execution of predefined business scenarios, which combine various business processes. The user test model is comprised of a sub-set of system integration test cases.

We use different software during testing. Most commonly use are

Test Director: which is used to record requirement, preparing test plan and then recording the progress. We will be incorporating defects that are coming during these testings using different test cases.

Mercury Load Runner: is used for performance testing. This is an automatic tool.

What does the following terms means :

- Technical Unit Testing

- Functional Unit Testing

- IntegrationTesting

- Volume Testing

- Parallel Testing?

Technical Unit Testing= Test of some technical development such as a user exit, custom program, or interface. the test usually consists of a test data set that is processed according to the new program. A successful test only proves the developed code works and that it performed the process as as designed.

Functional Unit Testing= Test of configuration, system settings or a custom development (it may follow the technical unit testing) These usually use actual data or data that is masked but essentially the same as a real data set. A successful test shows that the development or configuration works as designed and the data is accurate as a result.

IntegrationTesting= Testing a process, development or configuration within the context of any other functions that the process, development or functionality will touch or integrate . The test should examine all data involved across all modules and any data indirectly affected. A successful test indicates that the processes work as designed and integrate with other functions without causing any problems in any integrated areas.

Volume Testing= testing a full data set that is either actual or masked to insure that the entire volume does cause system problems such as network transmission problems, system resources issues, or any systemic problem, A successful test indicates that the processes will not slow or crash the system due to a full data set being utilized.

Parallel Testing= Testing the new system or processes with a complete data set while running the same processes in the legacy system. A successful test will show identical results when both the legacy system and new system results are compared.

I would also note that when a new implementation is being done you will want to conduct at least one cut over test from the old system to the new and you should probably do several.

What kind of testings that are carried out in testing server?

1. Individual Testing ( Individually which we've created)

2. Regressive Testing ( Entire Process)

3. Integration Testing ( Along with other integrated modules)

The 3 types of testing is as follows:-

1. Unit testing (where an individual process relevant to a SD or MM etc is tested)

2. Integration testing (where a process is tested that cuts across all areas of SAP).

3. Stress testing (where lots of transactions are run to see if the system can handle the data)

pls reward points if the answer is helpful

Regards,

Govind.