I=
Pakistan Research Repository Home
 

Title of Thesis

Coverage Analysis For GUI Testing

Author(s)

Abdul Rauf

Institute/University/Department Details
Department of Computer Science / National University of Computer & Emerging Sciences, Islamabad
Session
2011
Subject
Computer Science
Number of Pages
138
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

Abstract
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.

Download Full Thesis
2,623 KB
S. No. Chapter Title of the Chapters Page Size (KB)
1 0 CONTENTS

 

v
278 KB
2

1

INTRODUCTION

1.1 Background and Motivation
1.2 Problem Statement
1.3 Knowledge Based Software Engineering
1.4 The Goal of the Thesis
1.5 Thesis Contributions
1.6 Thesis Organization

1
244 KB
3 2 STATE-OF-THE-ART AUTOMATED GUI TESTING

2.1 Software Testing
2.2 Automated Software Testing
2.3 Measurements in Software Testing
2.4 Test Coverage
2.5 Graphical User Interface Testing
2.6 Graphical User Interface Testing Techniques
2.7 Knowledge Based Software Testing

26
432 KB
4 3 MODELING GUI FOR TESTING

3.1 Modeling GUI for Testing
3.2 Role of Modeling in GUI Testing
3.3 Existing UML Extensions.
3.4 Extending UML to Model GUI
3.5 Summary

46
293 KB
5 4 COVERAGE OPTIMIZATION FOR GUI TESTING

4.1 Testing Context Free Applications
4.2 Test Coverage
4.3 Importance of Test Coverage
4.4 Coverage Criterion for GUI Testing
4.5 Single Objective Evolutionary Algorithms for Coverage Analysis
4.6 Coverage Analysis for GUI Testing Using Genetic Algorithm
4.7 Coverage Analysis for GUI Testing Using PSO
4.8 Comparative Analysis
4.9 Summary

58
868 KB
6 5 MULTI OBJECTIVE COVERAGE OPTIMIZATION

5.1 GUI Test Coverage Optimization by Multi Objective Algorithms
5.2 GUI Test Coverage Optimization by MOPSO
5.3 GUI Test Coverage Optimization by Multi- Objective GA (MOGA)
5.4 Experimental Results
5.5 Results Analysis
5.6 Summary

92
437 KB
7 6 COVERAGE OPTIMIZATION BASED GUI TEST FRAMEWORK

6.1 Oracles Development
6.2 Ontology Development
6.3 Ontology Driven Semantic Annotation Based GUI Testing
6.4 Summary

108
444 KB
8 7 CONCLUSION AND FUTURE WORK

7.1 Contributions: With Reference to Individual Chapters
7.2 Recommendations for Future Work

117
133 KB
9

8

REFERENCES

 

122
869 KB