dc.contributor.author |
Hammoud, Dalal Samir, |
dc.date.accessioned |
2017-08-30T14:05:34Z |
dc.date.available |
2017-08-30T14:05:34Z |
dc.date.issued |
2015 |
dc.date.submitted |
2015 |
dc.identifier.other |
b18380013 |
dc.identifier.uri |
http://hdl.handle.net/10938/10599 |
dc.description |
Thesis. M.E. American University of Beirut. Department of Electrical and Computer Engineering, 2015. ET:6309 |
dc.description |
Advisor : Dr. Fadi Zaraket, Assistant Professor, Electrical and Computer Engineering ; Committee Members : Dr. Ali Chehab, Professor, Electrical and Computer Engineering ; Dr. Wassim Masri, Associate Professor, Electrical and Computer Engineering. |
dc.description |
Includes bibliographical references (leaves 82-87) |
dc.description.abstract |
Oracles used for testing graphical user interface (GUI) programs are required to take into consideration complex non-functional factors such as variations in screen resolution or color scheme. To accommodate this aspect of GUI testing, specifically when comparing observed to expected outputs, researchers proposed fuzzy comparison rules and computationally expensive image processing techniques to tame the comparison process; which is necessary, otherwise absolute comparison would be too conservative to be practical. Alternatively, we propose GUICop, a new approach with a supporting toolset that checks whether the execution trace of a GUI program adheres to a user-defined specification that is expectedly free of non-functional aspect. GUICop comprises the following: 1) a GUI specification language; 2) instrumented GUI libraries; 3) a solver; 4) a driver; and 5) a code weaver. The user defines the functional specifications of the subject application using the GUI specification language whose alphabet consists of: a) basic geometric objects describing GUI components; b) GUI events; and c) positional operators that express relative object positions. The driver traverses the GUI structure of the subject and generates events that drive its execution. The GUI libraries capture the GUI execution trace, i.e., information about the relative positions taken by the displayed GUI components. And the solver, enabled by the code weaver, checks whether the traces satisfy the specifications. We successfully evaluated GUICop using case scenarios that we developed and real life case studies such as JEdit, Advanced JukeBox and Gason. |
dc.format.extent |
1 online resource (xi, 87 leaves) : illustrations (some color) ; 30cm |
dc.language.iso |
eng |
dc.relation.ispartof |
Theses, Dissertations, and Projects |
dc.subject.classification |
ET:006309 |
dc.subject.lcsh |
Graphical user interfaces (Computer systems) |
dc.subject.lcsh |
Computer algorithms. |
dc.subject.lcsh |
Computer software -- Testing. |
dc.subject.lcsh |
Computer software -- Verification. |
dc.subject.lcsh |
Computer software -- Development. |
dc.subject.lcsh |
Java (Computer program language) |
dc.title |
GUICop : specification based GUI testing - |
dc.type |
Thesis |
dc.contributor.department |
Faculty of Engineering and Architecture. |
dc.contributor.department |
Department of Electrical and Computer Engineering, |
dc.contributor.institution |
American University of Beirut. |