SAP ABAP Debugging Interview Questions
Debugging is the ABAP round where interviewers stop asking what you know and start asking how you work. Almost nobody is asked to recite the debugger's screen layout; they are asked what they would do with a short dump, a wrong value on a screen field, or a job that fails only in production.
The questions on this page are drawn from ERPClimb's reviewed ABAP question bank and are ordered from foundational to advanced. They cover the mechanics — session versus external breakpoints, watchpoints, the layers and tools of the ABAP debugger — and then the situations where the mechanics stop being enough: update task processing, background work processes, calls that arrive from an external system, and code you are not allowed to change.
Each answer is written the way a good interview answer sounds out loud: what you would look at first, what the system behaviour tells you, and where the search narrows next. If you can talk through the questions below without reading them, you can hold a debugging conversation with a lead developer.
What interviewers actually probe
Where the breakpoint goes
Interviewers listen for whether you place a breakpoint by guess or by evidence — the calling stack, a message number, a database update, or an authority check are all defensible entry points, and picking the right one is most of the skill.
Debugging what does not run in your session
Update tasks, background jobs and inbound calls do not stop at a session breakpoint. Being able to explain why, and what you would use instead, separates candidates who have debugged production from candidates who have debugged a report.
Reading state instead of stepping
Senior rounds favour watchpoints, the call stack and inspecting internal table contents over pressing F5 several hundred times. Expect at least one question that punishes brute-force stepping.
Knowing when to stop
A common closing question is what you would do when the debugger shows correct code operating on wrong data. The expected answer moves outward: data, configuration, master data, interface — not deeper into the code.
25 questions with full answers
Ordered from foundational to advanced. No sign-in required.
2. What is the difference between an external breakpoint and a session breakpoint in ABAP debugging, and when would you use each in a real project?
3. How do you set a conditional breakpoint in ABAP, and why is it more useful than a plain breakpoint inside a loop that processes thousands of records?
4. You are told a custom BAdI implementation is 'not working' for a specific plant, but works fine for others. How do you debug this systematically?
5. Why is checking sy-subrc after every database operation and sy-tabix inside loops considered a debugging best practice, and what mistakes do junior developers commonly make around them?
6. A custom update function module (registered as V1 update) is supposed to insert a record into a Z table on sales order save, but the record never appears. How would you use update debugging to find the cause?
7. You suspect a field-symbol is pointing to unexpected or stale data inside a loop, causing wrong values in the output. How would you debug this?
8. A user exit is supposed to update a custom field during sales order save, but the field is coming up blank in production. Walk through how you would debug this.
9. You receive a production dump reported in ST22 with the exception CX_SY_ITAB_LINE_NOT_FOUND, but you have no direct way to reproduce it in the test system. How would you debug this using ST22 and the call stack?
10. A background job is producing incorrect output only when scheduled via SM37, but works correctly when the same program is run in foreground with the same selection screen values. How do you debug this?
11. During a report run, an internal table that should have 500 rows only shows 480 after a certain point in the code, with no error raised. How would you debug this using the ABAP debugger?
12. As an architect, how would you decide, for a new complex integration involving background jobs, RFC calls, and update tasks, what proactive debugging and monitoring hooks should be built into the design from the start, rather than added reactively after production issues appear?
13. While debugging a deep call stack involving multiple nested function modules and classes, how do you effectively use the call stack to identify where a wrong value actually originated?
14. You are told that a piece of custom code you wrote is 'not running at all' in production, even though it works in the test system. How do you debug why the code is simply not being triggered?
15. A user reports 'No authorization' errors intermittently while running a custom transaction, but they claim their role setup hasn't changed. How do you debug this using SU53 and authorization trace?
16. A newly onboarded developer keeps introducing production defects that could have been caught through better debugging discipline before transport. As an architect or technical lead, how would you mentor the team and design a review process to reduce this without slowing down delivery significantly?
17. What is system debugging in SAP, and when would you need to use it instead of normal application debugging?
18. A SmartForm output is printing an incorrect total amount only for orders with more than one page, while single-page orders print correctly. At a high level, how would you approach debugging this?
19. A custom report is taking significantly longer to run for one specific date range compared to others, even though the number of resulting rows is similar. How would you use SAT to root-cause the performance issue?
20. An RFC-enabled function module is called from a non-SAP middleware system, and the caller reports a timeout, but no dump appears in ST22 on the SAP side. How would you debug this issue?
21. As an architect, how would you design a team-level debugging and diagnostics strategy for a landscape where issues frequently span dialog processing, background jobs, and RFC calls to external middleware, so that root-causing production issues doesn't rely purely on ad-hoc debugging skill?
22. During an ST05 SQL trace review, you notice the same SELECT statement is executed thousands of times inside a loop, each time hitting the database individually. How would you confirm this root cause and what direction would you recommend for the fix?
23. A performance issue in a custom program occurs only in production and only during month-end, but never in the test or quality systems. How would you root-cause this without being able to fully reproduce it outside production?
24. A custom enhancement in the goods receipt process is calculating a wrong stock quantity only for batch-managed materials. How would you debug the data flow to find the root cause?
25. You need to debug a live production issue affecting real customer data, but you must not risk changing any data during the investigation. What precautions and techniques would you use?
Practise by experience level
The questions above are tagged by the experience levels they are normally asked at, so the same page works for a first interview and for a lead-developer round.
SAP ABAP Debugging Interview Questions FAQ
What is the difference between a session breakpoint and an external breakpoint?
A session breakpoint only stops processing inside your current dialog session, so it is right for a report or transaction you are running yourself. An external breakpoint is bound to a user and stops processing that is triggered outside your session — for example a call arriving from a web or RFC entry point — which is why it is the one you need when reproducing an interface issue.
How do you debug a background job in ABAP?
You cannot stop a running background work process with a session breakpoint. The usual answers interviewers accept are: reproduce the same processing in dialog, debug the job from the job monitoring screen while it is running, or use the debugger settings that allow the process to be captured — and, where nothing else is possible, add temporary logging and analyse the result rather than the run.
When would you use a watchpoint instead of a breakpoint?
When you know which value is wrong but not where it changes. A watchpoint stops execution the moment a field or internal-table component takes a given value, which turns an unbounded search through a call stack into a single stop. It is the standard answer for 'a field arrives at the screen with an unexpected value'.
How do you debug code you are not allowed to modify?
You debug it without changing it: external and session breakpoints, watchpoints, the call stack and, where the behaviour is driven by configuration, tracing the read of that configuration. Explaining that you would not add temporary statements to standard code is itself part of the expected answer.
What do interviewers expect when a short dump is given to you?
A method, not a guess. Read the dump's error category and the statement it stops on, look at the call stack to see who called it, check the values it shows, and only then decide whether the fault is code, data or configuration. Candidates who jump straight to a code change usually lose the question.
Next practice step
Related SAP interview topics
ERP Climb is an independent educational platform and is not affiliated with SAP SE.