Presentation on theme: "Automatic and Scalable Fault Detection for Mobile Applications MobiSys’ 14 Presented by Haocheng Huang"— Presentation transcript:
Automatic and Scalable Fault Detection for Mobile Applications MobiSys’ 14 Presented by Haocheng Huang
Goal Build a scalable, easy to use system that tests mobile apps for common, externally-inducible faults as thoroughly as possible. Does not detect all app failures
Analyse Root Cause of Crashes Partition crash reports that we believe originate due to the same root cause into a collection called a crash bucket. Use two techniques to determine the likely root cause of its crashes Use data mining techniques Search various Windows Phone developer forums
UI Automator Two decisions what UI control to interact with next how long to wait before picking the next control Problems in usual design multiple controls often lead to the same next page some controls do not have any event handlers attached to them a systematic exploration can lead to dead ends Address the first two issues using hit testing, the third by running multiple independent random monkeys concurrently
UI Automator Hit Testing The instrumentation framework instruments all UI event handlers in an app with a hit test monitor. It also assigns each event handler a unique ID.
UI Automator When to interact next? Add a transaction tracker that monitors the transaction at runtime and generates a ProcessingCompleted event when all the synchronous and asynchronous processing associated with an interaction is complete
UI Automator work flow
Inducing Faults Built as an extensible module in which various fault inducing modules (FIM) can be plugged in.