Lesson 1 of 5
ATC overview: checks, findings and priorities
9 min
Listen to this lesson
The ABAP Test Cockpit (ATC) is SAP's framework for running static checks, and optionally unit tests, over ABAP code and reporting the results in one place. It is built into every ABAP system, runs from ABAP development tools and from SAP GUI, and can be configured to stop a transport that carries serious problems. For a release manager, ATC is the closest thing ABAP has to an automatic code reviewer that never gets tired. For a tester, its results are evidence that the code meets agreed rules before anyone clicks through an app.
- Check variantA named set of checks, chosen by the quality lead
- RunFrom ADT, SAP GUI, a scheduled central run or a transport release
- FindingsEach problem found, with object, line, check, message and priority
- ActFix the code, or request an exemption with a justification
- GateConfigured priorities block or warn when a transport is released
Findings and priorities
Each finding names the object, the position in the code, the check and message that raised it, and a priority. Priority 1 is the most serious and priority 3 the least; your configuration can change the priority of individual check messages. SAP's own guidance for the SAP BTP ABAP environment describes the common pattern: transports containing priority 1 and 2 findings are blocked automatically, while priority 3 findings produce a notification. Many on-premise and Private Edition teams adopt the same rule.
| Priority | Typical meaning | Typical gate behavior | Contoso example |
|---|---|---|---|
| 1 | Error: must be fixed | Blocks release | Use of a non-released object in ZCMC_CLOUD |
| 2 | Warning: should be fixed | Blocks release | A SELECT inside a loop over all agreements |
| 3 | Information: worth knowing | Reported only | Classic API used through a documented wrapper |
Finding priorities and a common gate policy (exact meanings depend on your check variant and configuration).
Running the ATC
In ADT, a developer right-clicks an object or package and runs it as ABAP Test Cockpit, or uses the variant of the command that asks for a specific check variant. Results appear in the ATC Problems view; double-clicking a finding opens its details, often with documentation and sometimes a quick fix. Administrators configure ATC in SAP GUI with transaction ATC, or, in the SAP BTP ABAP environment, with the Configure ABAP Test Cockpit app, which SAP documents for assigning a check variant, changing priorities, setting the priorities that block or interrupt transport releases, setting a default configuration, and handling pseudo-comments and pragmas. ADT for Visual Studio Code, generally available since May 2026, runs ATC too. Where SAP Joule for Developers, ABAP AI capabilities is set up, ADT can explain a finding and propose a fix; a proposed fix is still a code change that needs its own rerun and review.
| Local developer run | Central or scheduled run | Transport release check | |
|---|---|---|---|
| Who starts it | The developer, in ADT | Quality lead or a schedule | The system, when a request is released |
| Scope | Objects the developer chooses | Packages or whole systems | Objects in the request |
| Purpose | Find and fix early | Measure and report trends | Stop bad code from moving |
| Results used for exemptions | No; SAP advises against it | Yes, the active result | Shown to the releasing user |
One rule from SAP's help is easy to miss: apply for exemptions only for findings from the active result of a central run, not for local results you generated in your own development environment, because only those exemptions are considered in future central runs. Lesson 4 covers exemptions in depth.
What would you do?
A developer shows Priya an ATC run with zero findings for the new deposit class. She notices the run used the developer's personal check variant. What should she do?
- The ATC runs a check variant over code and reports findings with priorities.
- Priority 1 is most serious; blocking on 1 and 2 and reporting 3 is a common policy.
- Developers run ATC in ADT; administrators configure it with transaction ATC or the Configure ATC app.
- Request exemptions only on the active result of central runs.
- Evidence names the variant, the date and the objects checked.
Check your understanding · not graded
Lesson check
1. Which ATC priority is the most serious?
2. In the SAP BTP ABAP environment, what does SAP describe for priority 3 findings at transport release?
3. Which ADT view lists findings after an ATC run?
4. Against which results should exemptions be requested?