This repository contains examples for all currently available test isolation tools in the ABAP Platform.
The idea of this repository is to show how to use any test environment, helper class and some common design patterns that help with isolating your code under test from its depended-on components.
If you want to isolate your code under test from the components it uses, you need to take a look at what your depended-on component is. Each isolation technique for a specific kind of depended-on component is used separate test class of the global class ZATI_CL_CODE_UNDER_TEST. The table below shows which test class uses which tool to isolate against which kind of depended-on component.
Test Class | Depended-On Component | Tool | First Release |
---|---|---|---|
ltc_call_other_object | Classes | Self-made test doubles | With ABAP OO |
ltc_call_other_object_fw | Classes | ABAP Object Oriented Test Double Framework | SAP BASIS 740 SP9 |
ltc_call_function_module | Function Modules | Function Module Test Double Framework | SAP NetWeaver 756 |
ltc_select_database_table | Database Tables and CDS Entities | ABAP SQL Test Double Framework | SAP NetWeaver 752 |
ltc_select_cds_entity | Database Artefacts which are used in CDS | ABAP CDS Test Double Framework | SAP NetWeaver 751 |
ltc_call_authority_check | Authority Checks | Classic ABAP Authority Check Test Helper API | SAP NetWeaver 755 |
ltcl_call_rap_bo_tx_bf_dbl | RAP Business Objects | Transactional Buffer Double Support | SAP NetWeaver 757 |
ltcl_call_rap_bo_mock_eml_api | RAP Business Objects | Mock EML API Support | SAP NetWeaver 757 |
You need a system with an ABAP runtime and abapGit.
You can pull the code with abapGit to any system with an ABAP runtime.
Create an issue in this repository if you find a bug or have questions about the content.
For additional support, ask a question in SAP Community.
If you want to contribute to this repository, please check our Code of Conduct.
Please feel free to check our Contribution-Guide.
Copyright (c) 2023 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.