Monday, 23 February 2015

GUI Testing



What is GUI ?

 

There are two types of interfaces in a computer application.
Command Line Interface is where you type text and computer responds to that command.
GUI stands for Graphical User Interface where you interact with the computer using images rather than text.

Following are the GUI elements which can be used for interaction between the user and application:



GUI Elements

What is GUI Testing?

Graphical User Interface (GUI) testing is the process of testing the system's GUI of the System Under Test. GUI testing involves checking the screens with the controls like menus, buttons, icons, and all types of bars - tool bar, menu bar, dialog boxes and windows etc.
What do you Check in GUI Testing ?
The following checklist will ensure detailed GUI Testing.
· Check all the GUI elements for size, position,
 width, length and acceptance of characters or
 numbers. For instance, you must be able to 
provide inputs to the input fields.
· Check you can execute the intended functionality 
of the application using the GUI
· Check Error Messages are displayed correctly
· Check for Clear demarcation of different sections
 on screen
· Check Font used in application is readable
· Check the alignment of the text is proper
· Check the Color of the font and warning
 messages is aesthetically pleasing
· Check that the images have good clarity
· Check that the images are properly aligned
· Check the positioning of GUI elements for 
different screen resolution.

 

Approach of GUI Testing:

GUI testing can be done through three ways:
Manual Based Testing
Under this approach, graphical screens are checked manually by testers in conformance with the requirements stated in business requirements document.


Manual Testing

Record and Replay
GUI testing can be done using automation tools. This is done in 2 parts. During Record , test steps are captured into the automation tool. During playback, the recorded test steps are executed on the Application Under Test. Example of such tools - QTP .


Record and PlayBack Testing

Model Based Testing

A model is a graphical description of system's behavior. It helps us to understand and predict the system behavior. Models help in a generation of efficient test cases using the system requirements. Following needs to be considered for this model based testing:
· Build the model
· Determine Inputs for the model
· Calculate expected output for the model
· Run the tests
· Compare the actual output with the expected output
· Decision on further action on the model
Some of the modeling techniques from which test cases can be derived:
· Charts - Depicts the state of a system and checks the state after some input.
· Decision Tables - Tables used to determine results for each input applied
Model based testing is an evolving technique for the generating the test cases from the requirements.Its main advantage, compared to above two methods, is that it can determine undesirable states that your GUI can attain.

 

Conclusion:

Success of a software product immensely depends on how the GUI interacts with the user and ease in using its various features. Hence GUI testing is very important. Manual GUI testing can sometimes be repetitive and boring and hence error prone. Automation is highly recommended for GUI testing.

No comments:

Post a Comment