TU Darmstadt / ULB / TUbiblio

Monkey see, monkey do: effective generation of GUI tests with inferred macro events

Ermuth, Markus and Pradel, Michael (2016):
Monkey see, monkey do: effective generation of GUI tests with inferred macro events.
In: ISSTA 2016 Proceedings of the 25th International Symposium on Software Testing and Analysis, ACM, Saarbrücken, Germany, ISBN 978-1-4503-4390-9,
DOI: 10.1145/2931037.2931053, [Conference or Workshop Item]

Abstract

Automated testing is an important part of validating the behavior of software with complex graphical user interfaces, such as web, mobile, and desktop applications. Despite recent advances in UI-level test generation, existing approaches often fail to create complex sequences of events that represent realistic user interactions. As a result, these approaches cannot reach particular parts of the application under test, which then remain untested. This paper presents a UI-level test generation approach that exploits execution traces of human users to automatically create complex sequences of events that go beyond the recorded traces. The key idea is to infer so-called macro events, i.e., sequences of low-level UI events that correspond to a single logical step of interaction, such as choosing an item of a drop-down menu or filling and submitting a form. The approach builds upon and adapts well-known data mining techniques, in particular frequent subsequence mining and inference of finite state machines. We implement the approach for client-side web applications and apply it to four real-world applications. Our results show that macro-based test generation reaches more pages, exercises more usage scenarios, and covers more code within a fixed testing budget than a purely random test generator.

Item Type: Conference or Workshop Item
Erschienen: 2016
Creators: Ermuth, Markus and Pradel, Michael
Title: Monkey see, monkey do: effective generation of GUI tests with inferred macro events
Language: German
Abstract:

Automated testing is an important part of validating the behavior of software with complex graphical user interfaces, such as web, mobile, and desktop applications. Despite recent advances in UI-level test generation, existing approaches often fail to create complex sequences of events that represent realistic user interactions. As a result, these approaches cannot reach particular parts of the application under test, which then remain untested. This paper presents a UI-level test generation approach that exploits execution traces of human users to automatically create complex sequences of events that go beyond the recorded traces. The key idea is to infer so-called macro events, i.e., sequences of low-level UI events that correspond to a single logical step of interaction, such as choosing an item of a drop-down menu or filling and submitting a form. The approach builds upon and adapts well-known data mining techniques, in particular frequent subsequence mining and inference of finite state machines. We implement the approach for client-side web applications and apply it to four real-world applications. Our results show that macro-based test generation reaches more pages, exercises more usage scenarios, and covers more code within a fixed testing budget than a purely random test generator.

Title of Book: ISSTA 2016 Proceedings of the 25th International Symposium on Software Testing and Analysis
Number: 25
Publisher: ACM
ISBN: 978-1-4503-4390-9
Uncontrolled Keywords: GUI testing, test generation, JavaScript, web applications
Divisions: Profile Areas
Profile Areas > Cybersecurity (CYSEC)
Event Location: Saarbrücken, Germany
Date Deposited: 14 Aug 2017 11:28
DOI: 10.1145/2931037.2931053
Identification Number: TUD-CS-2016-14767
Export:

Optionen (nur für Redakteure)

View Item View Item