GUI Testing Checklist
GUI Testing Checklist
The Loading message should show the application name, version number, and a bigger pictorial representation of the icon.
No Login is necessary
The main window of the application should have the same caption as the caption of the icon in Program Manager.
Closing the application should result in an "Are you Sure" message box
On each window, if the application is busy, then the hour glass should be displayed. If there is no hour glass (e.g. alpha access enquiries) then some enquiry in progress message should be displayed.
All screens should have a Help button; F1 should work doing the same.
This icon should correspond to the Original Icon under Program Manager.
Double Click the Icon to return the Window to its original size.
The window caption for every application should have the name of the application and the window name - especially the error messages.
These should be checked for spelling, English and clarity, especially on the top of the screen.
If the screen has an Control menu, then use all ungreyed options. (See below)
Use TAB to move focus around the Window. Use SHIFT+TAB to move focus backwards.
All controls should get focus - indicated by dotted box, or cursor. Tabbing to an entry field with text in it should highlight the entire text in the field.
The text in the Micro Help line should change - Check for spelling, clarity and non-updateable etc.
If a field is disabled (grayed) then it should not get focus. It should not be possible to select them with either the mouse or by using TAB. Try this for every grayed control.
Never updateable fields should be displayed with black text on a grey background with a black label.
All text should be left-justified, followed by a colon tight to it. In a field that may or may not be updateable, the label text and contents changes from black to grey depending on the current status.
List boxes are always white background with black text whether they are disabled or not. All others are grey.
In general, do not use goto screens, use gosub, i.e. if a button causes another screen to be displayed, the screen should not hide the first screen, with the exception of tab in 2.0
When returning return to the first screen cleanly i.e. no other screens/applications should appear.
Text Boxes
Move the Mouse Cursor over all Enterable Text Boxes. Cursor should change from arrow to Insert Bar. If it doesn't then the text in the box should be grey or non-updateable. Refer to previous page.
Try to overflow the text by typing to many characters - should be stopped Check the field width with capitals W.
Enter invalid characters - Letters in amount fields, try strange characters like +, - * etc. in All fields.
SHIFT and Arrow should Select Characters. Selection should also be possible with mouse.
Left and Right arrows should move 'ON' Selection. So should Up and Down.. Select with mouse by clicking.
Clicking with the mouse on the box, or on the text should SET/UNSET the box. SPACE should do the same
Command Buttons
If Command Button leads to another Screen, and if the user can enter or change details on the other screen then the Text on the button should be followed by three dots.
All Buttons except for OK and Cancel should have a letter Access to them. This is indicated by a letter underlined in the button text. The button should be activated by pressing ALT+Letter. Make sure there is no duplication.
Click each button once with the mouse - This should activate
The above are VERY IMPORTANT, and should be done for EVERY command Button.
Tab to another type of control (not a command button). One button on the screen should be default (indicated by a thick black border). Pressing Return in ANY no command button control should activate it.
If there is a Cancel Button on the screen , then pressing <Esc> should activate it.
Pressing the Arrow should give list of options. This List may be scrollable. You should not be able to type text in the box.
Pressing a letter should bring you to the first item in the list with that start with that letter. Pressing Ctrl - F4 should open/drop down the list box.
Spacing should be compatible with the existing windows spacing (word etc.). Items should be in alphabetical order with the exception of blank/none which is at the top or the bottom of the list box.
Drop down with the item selected should be display the list with the selected item on the top.
Make sure only one space appears, shouldn't have a blank line at the bottom. Combo Boxes
Should allow text to be entered. Clicking Arrow should allow user to choose from list
Should allow a single selection to be chosen, by clicking with the mouse, or using the Up and Down Arrow keys.
Pressing a letter should take you to the first item in the list starting with that letter.
If there is a 'View' or 'Open' button beside the list box then double clicking on a line in the List Box, should act in the same way as selecting and item in the list box, then clicking the command button.
Force the scroll bar to appear, make sure all the data can be seen in the box
VALIDATION CONDITIONS: 1. Does a failure of validation on every field cause a sensible user error message? 2. Is the user required to fix entries which have failed validation tests? 3. Have any fields got multiple validation rules and if so are all rules being applied? 4. If the user enters an invalid value and clicks on the OK button (i.e. does not TAB off the field) is the invalid entry identified and highlighted correctly with an error message.? 5. Is validation consistently applied at screen level unless specifically required at field level? 6. For all numeric fields check whether negative numbers can and should be able to be entered. 7. For all numeric fields check the minimum and maximum values and also some mid-range values allowable? 8. For all character/alphanumeric fields check the field to ensure that there is
NAVIGATION CONDITIONS: 1. Can the screen be accessed correctly from the menu? 2. Can the screen be accessed correctly from the toolbar? 3. Can the screen be accessed correctly by double clicking on a list control on the previous screen? 4. Can all screens accessible via buttons on this screen be accessed correctly? 5. Can all screens accessible by double clicking on a list control be accessed correctly? 6. Is the screen modal? I.e. is the user prevented from accessing other functions when this screen is active and is this correct? 7. Can a number of instances of this screen be opened at the same time and is this correct?
USABILITY CONDITIONS: 1. Are all the dropdowns on this screen sorted correctly? Alphabetic sorting is the default unless otherwise specified. 2. Is all date entry required in the correct format? 3. Have all pushbuttons on the screen been given appropriate Shortcut keys? 4. Do the Shortcut keys work correctly? 5. Have the menu options which apply to your screen got fast keys associated and should they have? 6. Does the Tab Order specified on the screen go in sequence from Top Left to bottom right? This is the default unless otherwise specified. 7. Are all read-only fields avoided in the TAB sequence?
DATA INTEGRITY CONDITIONS: 1. Is the data saved when the window is closed by double clicking on the close box? 2. Check the maximum field lengths to ensure that there are no truncated characters? 3. Where the database requires a value (other than null) then this should be defaulted into fields. The user must either enter an alternative valid value or leave the default value intact. 4. Check maximum and minimum field values for numeric fields? 5. If numeric fields accept negative values can these be stored correctly on the database and does it make sense for the field to accept negative numbers? 6. If a set of radio buttons represent a fixed set of values such as A, B and C then what happens if a blank value is retrieved from the database? (In some situations rows can be created on the database by other functions which are not screen based and thus the required initial values can be incorrect.) 7. If a particular set of data is saved to the database check that each value gets saved fully to the database. i.e. Beware of truncation (of strings) and rounding of numeric values.
GENERAL CONDITIONS: 1. Assure the existence of the "Help" menu. 2. Assure that the proper commands and options are in each menu. 3. Assure that all buttons on all tool bars have a corresponding key commands. 4. Assure that each menu command has an alternative(hot-key) key sequence which will invoke it where appropriate. 5. In drop down list boxes, ensure that the names are not abbreviations / cut short 6. In drop down list boxes, assure that the list and each entry in the list can be accessed via appropriate key / hot key combinations. 7. Ensure that duplicate hot keys do not exist on each screen 8. Ensure the proper usage of the escape key (which is to undo any changes that have been made) and generates a caution message Changes will be lost Continue yes/no 9. Assure that the cancel button functions the same as the escape key. 10. Assure that the Cancel button operates as a Close button when changes have be made that cannot be undone. 11. Assure that only command buttons which are used by a particular window, or in a particular dialog box, are present. - i.e make sure they dont work on the screen behind the current screen. 12. When a command button is used sometimes and not at other times, assures that it is grayed out when it should not be used. 13. Assure that OK and Cancel buttons are grouped separately from other command
Assure that month code 00 and 13 are validated correctly & do not cause errors/miscalculations Assure that 00 and 13 are reported as errors
Assure that Feb. 28, 29, 30 are validated correctly & do not cause errors/miscalculations
Assure that century change is validated correctly & does not cause errors/miscalculations
Assure that out of cycle dates are validated correctly & do not cause errors/miscalculations
Numeric Fields Assure that lowest and highest values are handled correctly
Assure that numeric fields with a blank in position 1 are processed or reported as an error
Assure that fields with a blank in the last position are processed or reported as an error an error
Alpha Field Checks Use blank and non-blank data Include lowest and highest values Include invalid characters & symbols Include valid characters Include data items with first position blank Include data items with last position blank
VALIDATION TESTING - STANDARD ACTIONS On every Screen Add View Change Delete Continue Add View Change Delete Cancel Fill each field - Valid data Fill each field - Invalid data Different Check Box combinations Scroll Lists Help Fill Lists and Scroll