Comparison of GUI testing tools for Android applications
1University of Oulu, Faculty of Information Technology and Electrical Engineering, Department of Information Processing Science, Information Processing Science
|Online Access:||PDF Full Text (PDF, 1.9 MB)|
|Persistent link:|| http://urn.fi/URN:NBN:fi:oulu-201706142676
|Publish Date:|| 2017-06-14
|Thesis type:||Master's thesis
Test automation is an intriguing area of software engineering, especially in Android development. This is since Android applications must be able to run in many different permutations of operating system versions and hardware choices. Comparison of different tools for automated UI testing of Android applications is done in this thesis. In a literature review several different tools available and their popularity is researched and the structure of the most popular tools is looked at. The two tools identified to be the most popular are Appium and Espresso. In an empirical study the two tools along with Robotium, UiAutomator and Tau are compared against each other in test execution speed, maintainability of the test code, reliability of the test tools and in general issues. An empirical study was carried out by selecting three Android applications for which an identical suite of tests was developed with each tool. The test suites were then run and the execution speed and reliability was analysed based on these results. The test code written is also analysed for maintainability by calculating the lines of code and the number of method calls needed to handle asynchrony related to UI updates. The issues faced by the test developer with the different tools are also analysed. This thesis aims to help industry users of these kinds of applications in two ways. First, it could be used as a source on what tools are over all available for UI testing of Android applications. Second, it helps potential users of these kinds of tools to choose a tool that would suit best their needs, depending on if they are most interested on test execution speed or in the easiness of developing a reliable test suite. The results of this study are the first benchmarking of these Android UI testing tools. From this thesis one can see how a few of the tools available fare up against each other in a small-scale study. Tau and Espresso share the first place in maintainability, since Tau requires the least amount of lines of code, but Espresso requires no waiting method calls to ensure synchronization of the UI. While Tau faced least general issues during the test suite development, Espresso is clearly the fastest of the tools and it attains highest level of reliability, so it seems to be the best choice of the tools.
© Tomi Lämsä, 2017. This publication is copyrighted. You may download, display and print it for your own personal use. Commercial use is prohibited.