Smartphone users have come to expect high-quality apps. This has increased the importance of software testing in mobile software development. Unfortunately, testing apps (particularly the GUI) can be very time-consuming. Exercising every user interface element and verifying transitions between different views of the app under test quickly becomes problematic. For example, execution of iOS GUI test suites using Apple's UI Automation framework can take an hour or more if the app's interface is complicated. The longer it takes to run a test, the less frequently the test can be run, which in turn reduces software quality.
This book describes how to accelerate the testing process for iOS apps using HadoopUnit, a distributed test execution environment that leverages the parallelism inherent in the Hadoop platform. HadoopUnit was previously used to run unit and system tests in the cloud. It has been modified to perform GUI testing of iOS apps on a small-scale cluster; a modest computing infrastructure available to almost every developer. Experimental results have shown that distributed test execution with HadoopUnit can significantly outperform the test execution on a single machine, even if the size of the cluster used for the execution is as small as two nodes. This means that the approach described in this book could be adopted without a huge investment in IT resources. HadoopUnit is a cost-effective solution for reducing lengthy test execution times of system-level GUI testing of iOS apps.
Table of Contents
Using UI Automation with HadoopUnit
Rapid GUI Testing of iOS Apps
Appendix A: Setting up a HadoopUnit Cluster on Mac OSX
Ap-pendix B: HadoopUnit Source Code for iOS GUI Testing
About the Authors
About the Author(s)Scott Tilley
, Florida Institute of Technology
Scott Tilley is a Professor in the Department of Education and Interdisciplinary Studies at the Florida Institute of Technology, where he is Director of Computing Education. He is Chair of the Steering Committee for the IEEE Web Systems Evolution (WSE) series of events and a Past Chair of the ACM's Special Interest Group on Design of Communication (SIGDOC). He is an ACM Distinguished Lecturer. His main fields of interest are software engineering and computing education and his software engineering research lays at the intersection of software testing, cloud computing, and system migration. Scott's work in computing education focuses on computing literacy, educational technology, and STEM outreach. He writes the weekly "Technology Today" column for the Florida Today newspaper (Gannett). Krissada Dechokul
, Suwat Dechokul Part., Ltd.
Krissada Dechokul is a web and software developer from Thailand who has a passion for Apple technology, especially the iOS. He previously worked as a GIS programmer at ESRI (Thailand) Co., Ltd. He earned his Bachelor degree in Information and Communication Technology from Mahidol University and holds an MSE degree from the Florida Institute of Technology.