Title of Thesis
Coverage Analysis For GUI Testing
Department of Computer Science / National
University of Computer & Emerging Sciences, Islamabad
|Number of Pages|
|Keywords (Extracted from title, table of contents and
abstract of thesis)|
Graph, Technique, Critical,
Analysis, Algorithms, Testing, Organization, Coverage, Variants,
Software, Automation, Pattern, Applications, Function, Model
Software Testing is one of the most critical phases in development of software.The aim of software testing is to create quality software products to meet the expectations of an organization. oftware testing is considered as an effort demanding activity and hence it is often neglected to some extent.
Graphical user interface (GUI) is a major contributing factor behind the popularity of software applications in recent times.Realizing the importance of GUI‟s, a lot of research concentrating on GUI is being carried out.
Moreover the importance of ensuring the correctness of GUI is of higher value.
That‟s why; a software development organization must have to manage the additional testing for the GUI.
GUIs make testing systems more difficult because they inherit characteristics like event-driven nature, unsolicited events,
and infinite input domain problems.The major benefit of a GUI is that it hides the complexity from the users and sometimes from
programmers as wells.
In the end testing such applications becomes a nightmare for test team.To reduce the effort required and shorten the duration of testing GUI, automated techniques and tools are being used now.A GUI model based on event-flow graph is an innovative technique being utilized in the field of automated GUI testing.The search for utmost quality assurance of software, through the introduction of automated software testing,
raises yet another challenging question, what is the required “amount” of testing to gain confidence in quality of software?
Usually this criterion corresponds to a function known as “coverage” that measures how much of the software is to be tested?
Like procedural and command based software testing, same measure of coverage can be applied to GUI testing as well.
In the course of the development of the techniques for the automation of the software/GUI testing procedure,
this “coverage” measure can be employed to provide guidance on the quality of an automatic test suite.
A fully automatic strategy has been developed for the generation of events to exploit the event flow nature of GUI‟s.
Proposed methodology provides an analysis of GUI path test coverage based on these recorded events.A coverage analyzer using evolutionary algorithms optimization is proposed that performs analysis to maximize the GUI test coverage.The proposed technique uses different variants of Genetic Algorithms and Particle Swarm Optimization.
Initially, the technique has been optimized with the aim to gain maximum test coverage and then other important attributes like cost
and number of test cases have also been incorporated with the help of multi-objective optimization.
Based on the event driven nature of GUI, this thesis presents a GUI testing and coverage analysis technique centered on evolutionary algorithms.Technique proposes a design pattern based profile of GUI.This profile is further used to model the GUI and based on this modeling,
testing process is started.Ontology based annotation process is used to generate test cases based on event driven nature of GUI systems.Test coverage analysis is used to ensure that maximum test coverage has been achieved.
Different evolutionary algorithms have been used to optimize test coverage.Finally a test oracle based on semantic annotations and working of ontology is used to verify the output of test cases.