跳到主要导航 跳到搜索 跳到主要内容

Repairing Crashes in Android Apps

  • Shin Hwei Tan
  • , Zhen Dong
  • , Xiang Gao
  • , Abhik Roychoudhury
  • Southern University of Science and Technology
  • National University of Singapore

科研成果: 期刊稿件会议文章同行评审

摘要

Android apps are omnipresent, and frequently suffer from crashes-leading to poor user experience and economic loss. Past work focused on automated test generation to detect crashes in Android apps. However, automated repair of crashes has not been studied. In this paper, we propose the first approach to automatically repair Android apps, specifically we propose a technique for fixing crashes in Android apps. Unlike most test-based repair approaches, we do not need a test-suite; instead a single failing test is meticulously analyzed for crash locations and reasons behind these crashes. Our approach hinges on a careful empirical study which seeks to establish common root-causes for crashes in Android apps, and then distills the remedy of these root-causes in the form of eight generic transformation operators. These operators are applied using a search-based repair framework embodied in our repair tool Droix. We also prepare a benchmark DroixBench capturing reproducible crashes in Android apps. Our evaluation of Droix on DroixBench reveals that the automatically produced patches are often syntactically identical to the human patch, and on some rare occasion even better than the human patch (in terms of avoiding regressions). These results confirm our intuition that our proposed transformations form a sufficient set of operators to patch crashes in Android.

源语言英语
页(从-至)187-198
页数12
期刊Proceedings - International Conference on Software Engineering
2018-January
DOI
出版状态已出版 - 2018
已对外发布
活动40th International Conference on Software Engineering, ICSE 2018 - Gothenburg, 瑞典
期限: 27 5月 20183 6月 2018

指纹

探究 'Repairing Crashes in Android Apps' 的科研主题。它们共同构成独一无二的指纹。

引用此