To summarize, our contributions are:
• We initiate the study of cross-platform mobile app development
frameworks, and present an analysis of the kinds of
bugs that may arise when these frameworks translate between
the semantics of the programming interfaces of two different
platforms (Section III).
• We present the design of X-Checker, a testing tool for crossplatform
frameworks that uses random differential testing to
expose bugs in these frameworks (Section IV). We also present
a number of practical challenges that we had to overcome in
the implementation of X-Checker (Section V).
• We show the effectiveness of X-Checker by applying it to
Xamarin. Specifically, X-Checker tests Xamarin’s fidelity as it
translates between the Windows Phone and Android platforms.
To date, X-Checker has found 47 bugs, 12 of which have been
fixed after we reported them (Section VI).