
doi: 10.32657/10220/48041
handle: 10356/89265 , 10220/48041
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
:Engineering::Computer science and engineering::Software::Software engineering [DRNTU], DRNTU::Engineering::Computer science and engineering::Software::Software engineering, 004
:Engineering::Computer science and engineering::Software::Software engineering [DRNTU], DRNTU::Engineering::Computer science and engineering::Software::Software engineering, 004
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 0 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Average | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Average | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Average |
