Lesson 4 of 6
Level of detail and audience
7 min
Listen to this lesson
The same order-to-cash test can be written in eight lines or in eighty. Neither is wrong in itself. The right level of detail depends on who will run the case, how risky the process is, and how often the user interface is likely to change. Getting this wrong in either direction costs the project: too little and new testers guess, too much and every screen change breaks the script. Start by asking who will actually read the case. On an SAP program there are usually four kinds of reader, and each wants something different from the same document.
| Reader | What they know | What they need from the script |
|---|---|---|
| Business key user in UAT (Maria) | The business process deeply; SAP screens partly | Business-language steps, where to start, which fields matter, clear expected results |
| Functional consultant in SIT | Configuration and screens; less about day-to-day exceptions | Objective, data, the checks that matter; little click-level guidance |
| Regression tester after handover | Neither the process history nor the design decisions | Enough context to run it cold: preconditions, entry points, every non-obvious field |
| Automation engineer | Tools and techniques; not the business rules | Unambiguous steps, parameterized data, machine-checkable results |
The four usual readers of an SAP test case.
Write for the least experienced reader who will realistically run the case, not for yourself. At Contoso, that is the internal regression team after hypercare, so Priya sets the default level at "a capable business user who has never run this process in S/4HANA". The test level matters too. A consultant's unit test of a pricing procedure can be terse because the consultant is also the reader. A system integration test that crosses sales, warehouse and finance needs more context, because no single tester knows every module. User acceptance testing needs business language above all, because the key users are judging whether the process fits how Contoso works, not whether a screen behaves.
| Test level | Usual reader | Detail needed |
|---|---|---|
| Unit test of a pricing procedure | The consultant who wrote it | Terse: objective, data and checks |
| System integration test | Testers who each know one module | More context across sales, warehouse and finance |
| User acceptance test | Key users such as Maria | Business language; does the process fit how Contoso works? |
| Regression after hypercare | Contoso regression team | Enough to run cold: preconditions, entry points, non-obvious fields |
Intent-level steps with targeted field detail
A practical pattern is to write each step as a business action, then add field-level guidance only where a field is the point of the test or is easy to get wrong. Compare the three versions of one step below. The third tells the tester what to achieve, highlights the two fields that matter, explains why they matter, and leaves routine navigation to the tester. A new tester can still look up the navigation in the job aid or the process training material, which is maintained once for everybody instead of being copied into every script.
- Too thin: "Create the order."
- Too thick: "Click field Sold-To Party, type 17100001, press Tab, click field Ship-To Party, type 17100001, press Tab, click field Cust. Reference, type PO-5531…" (and so on for 25 fields).
- Right: "Create a standard sales order for the customer and product in the data set, sales area 1710 / 10 / 00. Enter the customer reference from the data set (it is printed on the invoice and checked in step 6). Leave pricing date blank so it defaults to today."
Screen-agnostic wording for Fiori and SAP GUI
On an S/4HANA Private Edition or on-premise program the same action can often be done in a Fiori app or an SAP GUI transaction; the sales order can be created in Manage Sales Orders or with VA01. If the step text embeds one UI, the case breaks when the project switches, or when a tester uses the other route. Put the business action in the step and the entry point in a separate column or field: "Where: Manage Sales Orders app (or VA01)". In SAP S/4HANA Cloud Public Edition, users work almost entirely in Fiori apps, so name the app and its business role. Avoid describing button positions, colors or screen coordinates. Use the label a user sees, and accept that labels can vary slightly by release and personalization. If a field's position matters, it is usually because of a configuration choice, and that belongs in the expected result, not the step. The same thinking applies to what the tester should look at. "Check the net value on the item" works in both UIs; "check the third column of the item table" does not. Where a check really does depend on the UI, for example a Fiori app that shows a status as a colored indicator while the SAP GUI transaction shows a text, say what the status means in business terms and let the tester read it from whichever screen they use.
| One case with tester notes | Consultant and business versions | |
|---|---|---|
| Maintenance | Changed once | Changed twice, or not at all |
| After two cycles | Still reflects the design | Copies drift; nobody knows which is current |
| Business testers | Read the notes | Use their own copy |
| Regression team | Read the notes once, then skip them | Must pick a version and hope |
What would you do?
A consultant hands Maria a 92-step order-to-cash script with every click described for SAP GUI. Maria's UAT testers will use Fiori apps. The release is in four weeks. What is the best course?
- Write for the least experienced reader who will realistically run the case.
- Use intent-level business steps and add field detail only where the field drives the result or is easy to get wrong.
- Keep the entry point (Fiori app or transaction) separate from the step text so the case survives UI changes.
- A "tester notes" field lets one case serve both business testers and consultants.
Check your understanding · not graded
Lesson check
1. Who should you write a test case for by default?
2. When should a step include field-level instructions?
3. How do you keep a step valid for both Fiori and SAP GUI?
4. In SAP S/4HANA Cloud Public Edition, what should a step name as its entry point?