TY - GEN
T1 - Fuzzy and cross-app replay for smartphone apps
AU - Hu, Yongjian
AU - Neamtiu, Iulian
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/5/14
Y1 - 2016/5/14
N2 - The behavior of smartphone apps is driven by input from sensors such as GPS, microphone, or camera. Hence the ability to construct test inputs, and send these inputs to the app is essential for testing. Leveraging our prior results in recording and replaying sensor inputs in Android apps we have constructed a new approach that helps automate smartphone app testing by capturing the input log (sensor stream) and using this log in two ways. First, we fuzz (alter) the log in a semantically-meaningful way: by applying principled transformations (e.g., changing GPS coordinates or navigation speed), a new input log is constructed, which represents a new test case. Second, we use the log captured in app A to test an app B which offers similar functionality, e.g., GPS navigation or image recognition. We have applied our approach to several widely-used Android apps and found that the approach is effective: it has revealed new bugs in four popular apps; has produced new test cases that increase coverage; and has produced test cases from logs originating in other apps.
AB - The behavior of smartphone apps is driven by input from sensors such as GPS, microphone, or camera. Hence the ability to construct test inputs, and send these inputs to the app is essential for testing. Leveraging our prior results in recording and replaying sensor inputs in Android apps we have constructed a new approach that helps automate smartphone app testing by capturing the input log (sensor stream) and using this log in two ways. First, we fuzz (alter) the log in a semantically-meaningful way: by applying principled transformations (e.g., changing GPS coordinates or navigation speed), a new input log is constructed, which represents a new test case. Second, we use the log captured in app A to test an app B which offers similar functionality, e.g., GPS navigation or image recognition. We have applied our approach to several widely-used Android apps and found that the approach is effective: it has revealed new bugs in four popular apps; has produced new test cases that increase coverage; and has produced test cases from logs originating in other apps.
KW - App testing
KW - Google Android
KW - Mobile applications
KW - Physical sensors
KW - Record-and-replay
UR - http://www.scopus.com/inward/record.url?scp=84974574051&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84974574051&partnerID=8YFLogxK
U2 - 10.1145/2896921.2896925
DO - 10.1145/2896921.2896925
M3 - Conference contribution
AN - SCOPUS:84974574051
T3 - Proceedings - 11th International Workshop on Automation of Software Test, AST 2016
SP - 50
EP - 56
BT - Proceedings - 11th International Workshop on Automation of Software Test, AST 2016
PB - Association for Computing Machinery, Inc
T2 - 11th International Workshop on Automation of Software Test, AST 2016
Y2 - 14 May 2016 through 15 May 2016
ER -