First steps

What's most important in testing, is to split up the test cases into as little and detailed test steps as possible.

How to prepare a test case

  1. You need to be aware of the the requirements. If available, read the description in the Jira carefully and contact its developer/ author in case anything is unclear.
  2. Figure out which kind of data are needed for testing the issue.
  3. Create all necessary data. Do not use existing data since they might be corrupted or unsuitable.
  4. Figure out different test scenarios:
    - find the easiest intuitive way to pass the test
    - try to find alternatives for positive test results
    - find ways to make the test fail (e.g. saving records without having filled all mandatory fields)
  5. If you detect a bug, document it properly like this:
    - describe the buggy behaviour as detailed as possible
    - mention the environment and build you detected the bug
    - add screenshots or videos in order to make the bug easy to reproduce for others

Sample pattern for reporting a requirement in Jira

Headline Content

Business Process

The description of the business case (use case) that is condition for the triggering event of the functionality.
Current situation:
Description of current situation and pain point or need.
Goal:
 At this place we need a short description with a clear goal of the new functionality.
Business rules:
Rules defined by the customer to represent the business.
Actor:
The actor is the one who triggers the functionalityto be processed (for example: MYDAS User; or: Reorg).
Triggering Event:
The triggering event describes cause of the action of the functionality (for example: Publish Button).
Input:
In case special values are required they should be described here (for example: specific master data).
Precondition:
Conditions to enable the functionality to be processed (for example: A value for spots must be available).
Workflow:
Description of workflow that is processed within  the functionality (for example: After the user pushes the button the value must be checked and...).
Exceptions:
Exceptions are limiting factors for the entities of the functionality (for example: value is unique in the system; or: no overlapping time periods).

Output:
Result of processed functionality (for example: Email to the client).
Background documentation:
For example: Interface description
Technical hints:
For example: file path where to add the change
Open points:
Questions, unclear definitions, things out of scope

Sample pattern for a bug report

Headline Content

Description:


It is possible to change the media combi and campaign of a bundle that is connected to a booked placement.
The campaign connection is reset after saving the campaign record, but the media combi is still selected. It must not be allowed to change media combi and campaign of the bundle once actuals for its placement(s) are available.

Test on dmaxtest/ 6.05.10_RC241
Precondition:
Spots are booked on a placement
Workflow:
  1. Go to Master data > 360 Campaigns > Bundle and open a bundle that is connected to a booked placement.
  2. Change the media combi and save --> Bug: saving was possible
  3. Change the campaign to a campaign that is valid outside the placement's validity and save --> Bug: saving was possible
  4. Open the placement and save --> error due to mismatch of media  combi; a warning is displayed that the end date of the plcm was adjusted to the new campaign end date which obviously is not the case
  5. Open the original campaign and save --> saving was possible
  6. Open the bundle --> the connection to the campaign is restored
Expected result:
 If the user changes media combi and campaign, an error should be thrown.
 Error message:
 EN: Actuals for placements are available. The changes could not be saved.
 DE: Placements mit Ist-Werten sind vorhanden. Die Ă„nderungen wurden nicht gespeichert.
Background information:
A similar issue was solved with MVI-3874
Technical hints:

Resolution for change of campaigns:
Set campaign to not editable in cct_bundel class and config where it is set to editable.

Resolution for change of media combi:
once a bundle has placements it mustn´t be possible to change the  media combination. the needs to be handled by an error message once  saving the bundle "Bundle has Placements already. no change of media combi allowed."

Sample test case 1: How to create a new client

Action
Expected result
Possible exceptions
Open the client module.
The module can be opened without any exceptions.
Most likely are ORA-exceptions due to missing scripts.
Create a new record.
A new empty record is created.
  • ORA-exceptions due to missing scripts
  • broken configuration (empty tabs, missing mandatory fields, etc.)
Enter a name and save. Saving failed because the city in the address area is mandatory.
Enter a city name and save. Saving failed because the zip code is missing.
Enter a 4 digit zip code and save. Only for Germany: zip code needs to be a 5 digit number, saving failed.
Enter a 6 digit zip code and save. Only for Germany: zip code needs to be a 5 digit number, saving failed.

Enter a 5 digit zip code and save. Saving failed because the street is missing.
Enter a street name and save. Saving failed because you need to assign a client type first.
Open the client type selection by clicking on the magnifying glass. The selection is opened.
  • ORA-exceptions due to missing scripts
  • nullpointer on opening the selection
Select the item WT (advertiser) by double clicking it. The selected item is added to the vector in the background.
Save the record. The record was saved and got an ID and Lupdate (last user and last time of modification).
Add client type RECH (invoice recipient) and save. The record was saved.
Open the country selection in the address area. The selection is opened.
Select a foreign country and save. The record is saved with a warning.
Switch to tab "Invoice" and enter a VAT ID and a debtor number and save. The record was saved and the warning disappeared.
Modify the address and save. The record was saved.
Refresh the record. The changes are still present.
Remove the Active-flag and save. The record was saved.
Go back to the overview of all clients and refresh the view. The deactivated client is now highlighted grey.
Open the client, reactivate it and save. The record was saved.
Set the Lock-flag and save. The record was saved.
Go back to the overview of all clients and refresh the view.

The locked client is displayed in light grey font.

Remove the Lock-flag and save. The record was saved.

Sample test case 2: How to create an order

Action Expected result Possible exceptions
Open the order module. The module is opened without any exceptions. ORA-exceptions due to missing scripts.
Create a new record. A new empty record is created.
Save the record. Saving failed because the advertiser is missing.
Click into the advertiser-field. The selection is opened. ORA-exceptions, nullpointer
Rightclick into the selection and select "Show all" from the context menu. The selection is extended.
Verify that only active and unlocked clients of type advertiser (combinations with other types are allowed) are displayed. Only active and unlocked clients of type advertiser are displayed.
Select an advertiser via double click and save. Saving failed because the agency is missing.
Click into the advertiser-field and select "Show all" from the context menu.
Only active and unlocked clients regardless of their types are displayed. ORA-exceptions, nullpointer
Select a client and save. Saving failed because the invoice recipient is missing.
Click into the advertiser-field and select "Show all" from the context menu.
Only active and unlocked clients of their type invoice recipient (combinations with other types are allowed) are displayed.
ORA-exceptions, nullpointer
Select a domestic invoice recipient and save. The order was saved with a warning referring to the missing sales area.
Select a sales area and save. The order was saved without warnings.
Select a foreign invoice recipient and save. The order was saved with a warning stating that invoice settings are required for foreign invoice recipients. Please note: this warning will only be displayed if a sales area is allocated. Otherwise the warning due to the missing sales area will overwrite the warning on the invoice settings.
Select invoice settings and save. The order was saved without warnings.
Switch through the tabs. None of the tabs is empty and contains fields/ tables/ embedded records/ vectors.
Create a suborder via special action. An info pop up is shown and the suborder is now visible in the suborder tab.
Copy the order. The order is copied and a link to the new record is displayed in a pop up.
Open the link. The new order record is displayed in a pop up.
Please note: Only raw order data such as advertiser, agency and invoice recipient were inherited. Suborders, sales area etc. were not applied to the copied record.

Return to the original order record and copy it entirely. The order is copied and a link to the new record is displayed in a pop up.
Open the link. The entire order incl. suborders, invoice settings etc. was copied.
Please note: the validity (From) is automatically set to the following month.