Testing mobile applications via automated exploration of graphical user interface and textual user input generation
A Graphical User Interface (GUI) is acknowledged as a crucial component of an event-driven software (e.g., mobile apps). In the event-driven software, the GUI usually contains hundreds or even thousands of elements. As such, a large part of app functionality, and thus its code, is usually dedicat...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Theses and Dissertations |
Language: | English |
Published: |
2019
|
Subjects: | |
Online Access: | https://hdl.handle.net/10356/89265 http://hdl.handle.net/10220/48041 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
id |
sg-ntu-dr.10356-89265 |
---|---|
record_format |
dspace |
spelling |
sg-ntu-dr.10356-892652023-07-04T16:33:23Z Testing mobile applications via automated exploration of graphical user interface and textual user input generation Arnatovich, Yauhen Leanidavich Wang Lipo School of Electrical and Electronic Engineering Research Techno Plaza DRNTU::Engineering::Computer science and engineering::Software::Software engineering A Graphical User Interface (GUI) is acknowledged as a crucial component of an event-driven software (e.g., mobile apps). In the event-driven software, the GUI usually contains hundreds or even thousands of elements. As such, a large part of app functionality, and thus its code, is usually dedicated to a user interface, so its testing becomes an essential part of the software development life-cycle significantly improving quality of software. During a testing phase, the GUI can be tested by executing each event individually and observing its behaviour. However, it is not a trivial task since the behaviour of an event handler may depend on a GUI internal state, state of other entities (objects, event handlers) and an external environment. Furthermore, an outcome of the event handler execution may vary depending on a particular sequence of preceding events. As a result, each GUI event needs to be tested in a context of different states via generating and executing various sequences of the GUI events. Modern mobile apps have a highly interactive nature and complex GUI structure. As such, an automated GUI testing of mobile apps is a daunting task for developers and testers. Often the GUI testing is done manually where all possible combinations of the GUI elements for a given app screen are manually tested for functional correctness and aesthetic quality. The manual GUI-testing is no doubt an effective approach, however, it is inefficient, i.e., time-consuming, error-prone, and usually not complete, especially for a large software with complex GUIs. So, to facilitate manual testing, various automated testing approaches have been introduced such as model-based testing, concolic testing, search-based testing, evolutionary testing, and combinatorial testing. However, for automated testing, there is a challenge to generate tests with high coverage, as well as to maintain a reasonable execution time. These are hindered by the non-trivial structure, and highly interactive nature of mobile apps GUIs so that an achieved code coverage is generally low while execution time is high. Doctor of Philosophy 2019-04-17T04:45:54Z 2019-12-06T17:21:31Z 2019-04-17T04:45:54Z 2019-12-06T17:21:31Z 2019 Thesis Arnatovich, Y. L. (2019). Testing mobile applications via automated exploration of graphical user interface and textual user input generation. Doctoral thesis, Nanyang Technological University, Singapore. https://hdl.handle.net/10356/89265 http://hdl.handle.net/10220/48041 10.32657/10220/48041 en 199 p. application/pdf |
institution |
Nanyang Technological University |
building |
NTU Library |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
NTU Library |
collection |
DR-NTU |
language |
English |
topic |
DRNTU::Engineering::Computer science and engineering::Software::Software engineering |
spellingShingle |
DRNTU::Engineering::Computer science and engineering::Software::Software engineering Arnatovich, Yauhen Leanidavich Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
description |
A Graphical User Interface (GUI) is acknowledged as a crucial component of an event-driven
software (e.g., mobile apps). In the event-driven software, the GUI usually contains
hundreds or even thousands of elements. As such, a large part of app functionality, and
thus its code, is usually dedicated to a user interface, so its testing becomes an essential
part of the software development life-cycle significantly improving quality of software.
During a testing phase, the GUI can be tested by executing each event individually
and observing its behaviour. However, it is not a trivial task since the behaviour of an
event handler may depend on a GUI internal state, state of other entities (objects, event
handlers) and an external environment. Furthermore, an outcome of the event handler
execution may vary depending on a particular sequence of preceding events. As a result,
each GUI event needs to be tested in a context of different states via generating and
executing various sequences of the GUI events.
Modern mobile apps have a highly interactive nature and complex GUI structure. As
such, an automated GUI testing of mobile apps is a daunting task for developers and
testers. Often the GUI testing is done manually where all possible combinations of the
GUI elements for a given app screen are manually tested for functional correctness and
aesthetic quality. The manual GUI-testing is no doubt an effective approach, however, it
is inefficient, i.e., time-consuming, error-prone, and usually not complete, especially for
a large software with complex GUIs. So, to facilitate manual testing, various automated
testing approaches have been introduced such as model-based testing, concolic testing,
search-based testing, evolutionary testing, and combinatorial testing. However, for
automated testing, there is a challenge to generate tests with high coverage, as well as to
maintain a reasonable execution time. These are hindered by the non-trivial structure,
and highly interactive nature of mobile apps GUIs so that an achieved code coverage is
generally low while execution time is high. |
author2 |
Wang Lipo |
author_facet |
Wang Lipo Arnatovich, Yauhen Leanidavich |
format |
Theses and Dissertations |
author |
Arnatovich, Yauhen Leanidavich |
author_sort |
Arnatovich, Yauhen Leanidavich |
title |
Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
title_short |
Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
title_full |
Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
title_fullStr |
Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
title_full_unstemmed |
Testing mobile applications via automated exploration of graphical user interface and textual user input generation |
title_sort |
testing mobile applications via automated exploration of graphical user interface and textual user input generation |
publishDate |
2019 |
url |
https://hdl.handle.net/10356/89265 http://hdl.handle.net/10220/48041 |
_version_ |
1772825181029400576 |