Unit testing

Testing application logic without a running business process — and the test doubles that make dependencies on the database and on framework services tractable.

Overview

Testing ABAP logic without a running business process — and the test doubles that make dependencies on the database and on framework services tractable.

SAP SHIPS

ABAP Unit is part of the language and the ADT tooling, with test seams, test doubles and the CDS test double framework.

Not covered: Inside an ABAP system. ABAP Unit runs where the code is deployed, so a test needs a system to run in, and a pipeline that has none cannot run it.

THE COMMUNITY ADDS

Running the same tests with no system: @abaplint/transpiler turns the source and its ABAP Unit tests into JavaScript that runs on Node.js in CI, with open-abap-core supplying the standard classes the output calls. open-steamgate and the @abap2ui5/mcp-server run ABAP Unit the same way from a repository's classes, the abap2UI5 headless frontend drives a whole abap2UI5 session inside an ABAP Unit test, and Modernization Agents for SAP on AWS generates and runs tests either side of a conversion.

Artifacts21

21 of 21 artifacts
ArtifactSignals
Apps4
abap-unit-runnerApplication job that runs and schedules ABAP Unit tests in the cloud
Signals
none
abapCovUploads ABAP Unit code coverage to codecov.io
Signals
Quiet
Modernization Agents for SAP on AWSAWS agents for ABAP, PI/PO and BW modernisation work
Signals
Functional boundary
open-steamgateLocal ABAP server serving /IWBEP/ OData v2 without an SAP system
Signals
Functional boundary
Build tools1
@abaplint/transpilerTranspiles ABAP to JavaScript to run on Node.js
Signals
none
IDE extensions1
ABAP remote filesystemVS Code extension editing ABAP systems over ADT as a filesystem
Signals
none
MCP servers1
@abap2ui5/mcp-serverMCP server for the abap2UI5 check, deploy and run loop
Signals
Functional boundary
Packages14
abap_db_preparatorReplays stored database snapshots in ABAP unit tests
Signals
Quiet
abap-senchaBDD/TDD assertion library for ABAP Unit, styled after Chai.js
Signals
none
abap-test-containerGitHub-hosted test data container for ABAP Cloud
Signals
none
abap-utesthelpHelper classes for ABAP Unit tests and test doubles
Signals
none
abap2UI5 headless frontendDrives abap2UI5 app classes from ABAP Unit tests
Signals
Functional boundary
adash-servicesBackend exposing ABAP Unit runs and coverage over REST and OData
Signals
Quiet
assertFluent assertion helper for ABAP Unit tests
Signals
none
cacamber-BDD-for-ABAPBDD framework turning Given/When/Then into ABAP Unit steps
Signals
Quiet
express-icf-shimShim running an ABAP ICF handler behind an Express 4.x server
Signals
none
mockAA free mocking framework for ABAP, published under the Apache License 2.0.
Signals
Quiet
mockup_loaderLoader of Excel-prepared ABAP unit test data, with stub generation
Signals
none
open-abap-coreCore ABAP artifacts for code transpiled by @abaplint/transpiler
Signals
none
regression_testSnapshot testing library for ABAP, from debugger or unit test
Signals
Quiet+1
Vise_for_ABAPA characterisation-test helper: ZCL_VISE=>GRIP records a field's value once and fails a later run if it has changed.
Signals
Quiet

Content1

Group by
Piece, what it offers
By-passing function modules in aunits
SAP Community, Jagadish_R31, Blog

Seen working5

ArtifactSignals
Samples5
app-templateStarter repository for an abap2UI5 app with CI and agent setup
none
gladiusABAP project for learning the ABAP Unit Test Framework
none
off-stack-abapDemonstration of off-stack ABAP development on Node.js
none
SAP-samples/abap-platform-rap-workshopsMaterials for the RAP400 to RAP620 ABAP Cloud workshops
none
teched2025-AD162TechEd 2025 workshop on a Fiori app with ABAP Cloud and Joule
none

Details

Coverage
statecore and community, ABAP
assessed
relationshipunassessed
SourceSAP Help — Unit Testing with ABAP Unitchecked Sourceopen-abap.orgchecked Sourceabaplint/transpiler — READMEchecked
For your agent
Ref
capability:abap-unit-testing
JSON
/capabilities/abap-unit-testing.json
MCP
Connecting an agent