GUI Testing Guidelines

8
GUI Testing Guidelines Faiza Yousuf 2/18/2011

description

General guidelines for testing Graphical User Interface.

Transcript of GUI Testing Guidelines

Page 1: GUI Testing Guidelines

GUI Testing Guidelines Faiza Yousuf 2/18/2011

Page 2: GUI Testing Guidelines

2

Revision History

Release Number

Release Date

Revision Author(s) Summary of Changes

0.1.0 02/17/2011 Faiza Yousuf Created

0.1.1 02/18/2011 Faiza Yousuf Added Section 1.2 & 1.3

0.1.2 04/20/2011 Faiza Yousuf Corrected few errors

Page 3: GUI Testing Guidelines

3

Table of Contents

1. GUI Testing Guidelines .......................................................................................................................... 4

1.1 Windows Compliance Standards ........................................................................................................ 4

1.1.1 Compliance for each application ................................................................................................. 4

1.1.2 Compliance for each window in the application ......................................................................... 4

1.1.3 Text boxes .................................................................................................................................... 5

1.1.4 Radio Buttons ............................................................................................................................... 5

1.1.5 Check boxes ................................................................................................................................. 5

1.1.6 Push Buttons ................................................................................................................................ 5

1.1.7 Drop down list boxes ................................................................................................................... 6

1.1.8 Combo Box ................................................................................................................................... 6

1.1.9 List Boxes ...................................................................................................................................... 6

1.2 Testing of UI according to the Design Standards .......................................................................... 7

1.3 Field Validations ............................................................................................................................ 8

Page 4: GUI Testing Guidelines

4

1. GUI Testing Guidelines

Purpose of this GUI Testing Guideline is to help you understand how an application can be tested according to the known and understood standards for GUI. It can give some guidance to the development and QA, both the teams. Development team can make sure that during the development they follow guidelines related to the compliance, aesthetics, navigation etc. but focus of testing GUI is on the QA team and as a tester it is your responsibility to validate your products against GUI standards followed internationally.

This GUI test checklist can ensure that all the GUI components are thoroughly tested. In the first part of this guideline document, we will cover Windows compliance standard and some test ideas for field specific tests.

1.1 Windows Compliance Standards

These compliance standards are followed by almost all the windows based application. Any variance from these standards can result into inconvenience to the user. This compliance must be followed for every application. These compliances can be categorized according to following criteria

1.1.1 Compliance for each application

1. Application should be started by double clicking on the icon. 2. Loading message should have information about application name, version number,

icon etc. 3. Main window of application should have same caption as the icon in the program

manager. 4. Closing of the application should result in “Are you sure?” message. 5. Behavior for starting application more than once must be specified. 6. Try to start application while it is loading 7. On every application, if application is busy it should show hour glass or some other

mechanism to notify user that it is processing. 8. Normally F1 button is used for help. If your product has help integrated, it should come

by pressing F1 button. 9. Minimize and restoring functionality should work properly

1.1.2 Compliance for each window in the application

1. Window caption for every application should have application name and window name. Specially, error messages.

2. Title of the window and information should make sense to the user. 3. If screen has control menu, use the entire control menu like move, close, resize etc. 4. Text present should be checked for spelling and grammar.

Page 5: GUI Testing Guidelines

5

5. If tab navigation is present, TAB should move focus in forward direction and SHIFT+TAB in backward direction.

6. Tab order should be left to right and top to bottom within a group box. 7. If focus is present on any control, it should be presented by dotting lines around it. 8. User should not be able to select grayed or disabled control. Try this using tab as well as

mouse. 9. Text should be left justified 10. In general, all the operations should have corresponding key board shortcut key for this.

1.1.3 Text boxes

1. Move mouse to textbox and it should be changed to insert bar for editable text field and should remain unchanged for non-editable text field.

2. Test overflowing textbox by inserting as many characters as you can in the text field. Also test width of the text field by entering all capital W.

3. Enter invalid characters, special characters and make sure that there is no abnormality. 4. User should be able to select text using Shift + arrow keys. Selection should be possible

using mouse and double click should select entire text in the text box. 5. When the user enter maximum characters in the text field it should be freezes the user

to enter more characters or shows a popup message at that time not on the update button.

1.1.4 Radio Buttons

1. Only one should be selected from the given option. 2. User should be able to select any button using mouse or key board 3. Arrow key should set/unset the radio buttons.

1.1.5 Check boxes

1. User should be able to select any combination of checkboxes 2. Clicking mouse on the box should set/unset the checkbox. 3. Spacebar should also do the same

1.1.6 Push Buttons

1. All buttons except OK/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.

2. Clicking each button with mouse should activate it and trigger required action. 3. Similarly, after giving focus SPACE or RETURN button should also do the same. 4. If there is any Cancel button on the screen, pressing Esc should activate it.

Page 6: GUI Testing Guidelines

6

1.1.7 Drop down list boxes

1. Pressing the arrow should give list of options available to the user. List can be scrollable but user should not be able to type in.

2. Pressing Ctrl-F4 should open the list box. 3. Pressing a letter should bring the first item in the list starting with the same letter. 4. Items should be in alphabetical order in any list. 5. Selected item should be displayed on the list. 6. There should be only one blank space in the dropdown list.

1.1.8 Combo Box

1. Similar to the list mentioned above, but user should be able to enter text in it.

1.1.9 List Boxes

1. Should allow single select, either by mouse or arrow keys. 2. Pressing any letter should take you to the first element starting with that letter 3. If there are view/open button, double clicking on icon should be mapped to these

behavior. 4. Make sure that all the data can be seen using scroll bar.

Page 7: GUI Testing Guidelines

7

1.2 Testing of UI according to the Design Standards

1. Follow MM/DD/YYYY format for displaying dates. 2. Follow MM/DD/YYYY @ MM: HH AM/PM format for displaying date/time. 3. All the fields and button should be aligned and of standard size, page should look

symmetric. 4. Make sure that the spellings are correct. 5. Records which are displaying in rows and columns should be properly aligned. 6. Length of the rows & columns should be same for the entire table. 7. Drop down menus must displays (Select/choose/All) values by default. 8. Drop down menus are also used for displaying page numbers in our application. So

we have to make sure about the correct display of the selected number of the page and by default it must show the first page.

9. Make sure that the paging control is working fine and it lands the user on the correct page.

10. Make sure that the system crashes due to the wrong inputs (special characters, scripts, Tags).

11. The choices displayed for radio buttons are in one line and if the choices are long then they must be displayed in one column and it should look good.

12. Popup windows must display in a standard format and must look good. 13. These popup windows must look like a part of the system not as an advertisement

window. 14. Content in these windows must display in a proper way and in a standard font. 15. If these Popup windows are static and the content inside these windows might

increase than automatically activates a scroll bar for that window or for the specific content (e.g. comments etc).

16. Make sure the standard header and footer is there on all the pages. 17. Make sure the grids are according to our standard for specific applications. 18. Make sure the tab controls are working fine on the page. 19. Make sure the tool tips are correct and displaying properly. 20. Check that event bubbling is not happening on the page. 21. Check application for cross browser compatibility.

Page 8: GUI Testing Guidelines

8

1.3 Field Validations

1. Check whether the field is mandatory or not. 2. Check for the uniqueness of the field. 3. Check whether the field is auto generated or not. 4. Check its length and input type. 5. Check that the field label is correct, concise and understandable with no

spelling/grammatical errors. 6. Check the error/alert messages on fields. 7. Smart validation should be applied to the fields e.g. “Date” and “Email” fields. 8. User guidance should be given for maximum fields. 9. Check fields with high level security on and activating scripting enabled.