Semantic analysis for deep Q-network in android GUI testing

Tuyet Vuong, Shingo Takada

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Since the big boom of smartphone and consequently of mobile applications, developers nowadays have many tools to help them create applications easier and faster. However, efficient automated testing tools are still missing, especially for GUI testing. We propose an automated GUI testing tool for Android applications using Deep Q-Network and semantic analysis of the GUI. We identify the semantic meanings of GUI elements and use them as an input to a neural network, which through training, approximates the behavioral model of the application under test. The neural network is trained using the Q-Learning algorithm of Reinforcement Learning. It guides the testing tool to explore more often functionalities that can only be accessed through a specific sequence of actions. The tool does not require access to the source code of the application under test. It obtains higher code coverage and is better at fault detection in comparison to state-of-the-art testing tools.

Original languageEnglish
Title of host publicationProceedings - SEKE 2019
Subtitle of host publication31st International Conference on Software Engineering and Knowledge Engineering
PublisherKnowledge Systems Institute Graduate School
Pages123-128
Number of pages6
ISBN (Electronic)1891706489
DOIs
Publication statusPublished - 2019 Jan 1
Event31st International Conference on Software Engineering and Knowledge Engineering, SEKE 2019 - Lisbon, Portugal
Duration: 2019 Jul 102019 Jul 12

Publication series

NameProceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE
Volume2019-July
ISSN (Print)2325-9000
ISSN (Electronic)2325-9086

Conference

Conference31st International Conference on Software Engineering and Knowledge Engineering, SEKE 2019
CountryPortugal
CityLisbon
Period19/7/1019/7/12

Fingerprint

Graphical user interfaces
Semantics
Testing
Neural networks
Smartphones
Reinforcement learning
Fault detection
Learning algorithms
Android (operating system)

Keywords

  • Automated android testing
  • Deep Q-network
  • GUI testing
  • Reinforcement learning

ASJC Scopus subject areas

  • Software

Cite this

Vuong, T., & Takada, S. (2019). Semantic analysis for deep Q-network in android GUI testing. In Proceedings - SEKE 2019: 31st International Conference on Software Engineering and Knowledge Engineering (pp. 123-128). (Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE; Vol. 2019-July). Knowledge Systems Institute Graduate School. https://doi.org/10.18293/SEKE2019-080

Semantic analysis for deep Q-network in android GUI testing. / Vuong, Tuyet; Takada, Shingo.

Proceedings - SEKE 2019: 31st International Conference on Software Engineering and Knowledge Engineering. Knowledge Systems Institute Graduate School, 2019. p. 123-128 (Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE; Vol. 2019-July).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Vuong, T & Takada, S 2019, Semantic analysis for deep Q-network in android GUI testing. in Proceedings - SEKE 2019: 31st International Conference on Software Engineering and Knowledge Engineering. Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE, vol. 2019-July, Knowledge Systems Institute Graduate School, pp. 123-128, 31st International Conference on Software Engineering and Knowledge Engineering, SEKE 2019, Lisbon, Portugal, 19/7/10. https://doi.org/10.18293/SEKE2019-080
Vuong T, Takada S. Semantic analysis for deep Q-network in android GUI testing. In Proceedings - SEKE 2019: 31st International Conference on Software Engineering and Knowledge Engineering. Knowledge Systems Institute Graduate School. 2019. p. 123-128. (Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE). https://doi.org/10.18293/SEKE2019-080
Vuong, Tuyet ; Takada, Shingo. / Semantic analysis for deep Q-network in android GUI testing. Proceedings - SEKE 2019: 31st International Conference on Software Engineering and Knowledge Engineering. Knowledge Systems Institute Graduate School, 2019. pp. 123-128 (Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE).
@inproceedings{d4e6ac6dcbe14a3689689a8c15fc1f47,
title = "Semantic analysis for deep Q-network in android GUI testing",
abstract = "Since the big boom of smartphone and consequently of mobile applications, developers nowadays have many tools to help them create applications easier and faster. However, efficient automated testing tools are still missing, especially for GUI testing. We propose an automated GUI testing tool for Android applications using Deep Q-Network and semantic analysis of the GUI. We identify the semantic meanings of GUI elements and use them as an input to a neural network, which through training, approximates the behavioral model of the application under test. The neural network is trained using the Q-Learning algorithm of Reinforcement Learning. It guides the testing tool to explore more often functionalities that can only be accessed through a specific sequence of actions. The tool does not require access to the source code of the application under test. It obtains higher code coverage and is better at fault detection in comparison to state-of-the-art testing tools.",
keywords = "Automated android testing, Deep Q-network, GUI testing, Reinforcement learning",
author = "Tuyet Vuong and Shingo Takada",
year = "2019",
month = "1",
day = "1",
doi = "10.18293/SEKE2019-080",
language = "English",
series = "Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE",
publisher = "Knowledge Systems Institute Graduate School",
pages = "123--128",
booktitle = "Proceedings - SEKE 2019",

}

TY - GEN

T1 - Semantic analysis for deep Q-network in android GUI testing

AU - Vuong, Tuyet

AU - Takada, Shingo

PY - 2019/1/1

Y1 - 2019/1/1

N2 - Since the big boom of smartphone and consequently of mobile applications, developers nowadays have many tools to help them create applications easier and faster. However, efficient automated testing tools are still missing, especially for GUI testing. We propose an automated GUI testing tool for Android applications using Deep Q-Network and semantic analysis of the GUI. We identify the semantic meanings of GUI elements and use them as an input to a neural network, which through training, approximates the behavioral model of the application under test. The neural network is trained using the Q-Learning algorithm of Reinforcement Learning. It guides the testing tool to explore more often functionalities that can only be accessed through a specific sequence of actions. The tool does not require access to the source code of the application under test. It obtains higher code coverage and is better at fault detection in comparison to state-of-the-art testing tools.

AB - Since the big boom of smartphone and consequently of mobile applications, developers nowadays have many tools to help them create applications easier and faster. However, efficient automated testing tools are still missing, especially for GUI testing. We propose an automated GUI testing tool for Android applications using Deep Q-Network and semantic analysis of the GUI. We identify the semantic meanings of GUI elements and use them as an input to a neural network, which through training, approximates the behavioral model of the application under test. The neural network is trained using the Q-Learning algorithm of Reinforcement Learning. It guides the testing tool to explore more often functionalities that can only be accessed through a specific sequence of actions. The tool does not require access to the source code of the application under test. It obtains higher code coverage and is better at fault detection in comparison to state-of-the-art testing tools.

KW - Automated android testing

KW - Deep Q-network

KW - GUI testing

KW - Reinforcement learning

UR - http://www.scopus.com/inward/record.url?scp=85071395982&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85071395982&partnerID=8YFLogxK

U2 - 10.18293/SEKE2019-080

DO - 10.18293/SEKE2019-080

M3 - Conference contribution

AN - SCOPUS:85071395982

T3 - Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE

SP - 123

EP - 128

BT - Proceedings - SEKE 2019

PB - Knowledge Systems Institute Graduate School

ER -