The use of mobile devices in human's daily life is evolving exponentially due to contrasting propitious mobile applications. Thesemobile applications can be categorized into standalone mobile applications and enterprise mobile applications. Standalone mobile applications abide in the device and do not interact with external systems.
Whereas, enterprise mobile applications are made to execute resource-intensive transactions that are typical of corporate computingor web environments. Enterprise mobile applications also interact with external systems through Wireless Application Protocol (WAP) or Hyper Text Transfer Protocol (HTTP).
Mobile applications are more peculiar; require great development creativity and savvier testing. Mobile application testing requires not just skill, but creativity and resourcefulness. It also requires products and services specifically designed for the challenges of mobile technology.The unique challenges in testing mobile applications arise from the diversity of the device environment, device limitations, scripting, hardware, networking considerations, decencies, and Rapid Application Development (RAD) methodologies.
The testing of applications for mobile computing devices is cumbersome due to the bounded computational resources that these devices have and diversity in mobile environments. There are many different types of emulators that have been proposed and used nowadays for this purpose. But these emulators typically cannot emulate: actual network speed and availability, actual device specific content-rendering speed, memory limitation, cache size, CPU speed, and stack size. These emulators are designed for specific platforms, which lack testing of applications on heterogeneous mobile platforms.
Cloud Computing has a potential to overcome these challenges by taking up contemporary progress in parallel and distributed systems, virtualization, and software services. Cloud computing empowers us to have adaptable and on-demand network access to a common group of configurable computing resources. In this article, we introduce a cloud- based model that provides solutions to aforesaid challenges. Our model sets up a mobile environment, actual device and platform on the cloud resources for a given system configuration. It also provides software testing services to execute numerous tests automatically according to a given application.
Our cloud based testing model incorporates a number of capabilites associated with cloud computing: software as a service, platform as a service and infrastrcture as a service. It provides all the above categories of services in various forms, which accommodate both application services of on-premises and cloud environments.
In modeling the proposed system, it will be easier to understand the model by expressing it in the mobileapplication based definition form. In this form, the model is used to define different sets of Testing Services with respect to the mobileapplication, which is to be tested. In all the cases, the corresponding test scenario will be subset of these testing services.
From the mobileapplications perspective, the proposed system can be defined in terms of mobile application specific services. Development practices such asContinuously Integrating, Building, and Testing and Performance evaluation are crucial to for any Mobile Software Applications. Thesepractices help the development team to achieve imperatives such as Productivity, economized testing time or better quality. Howeveractualizing these mechanisms and imparting the best practices are extravagant in terms of Time, Money and Resources.
The approach enables application-level software to be executed and tested with the services and resources provided through cloud computing. Software tested successfully in oursystem can be run in the same way on the target device without being modified or recompiled. Our system has given solutions to many of theproblems that exist in the software testing for mobile applications.
Our approach will be useful in emulating and testing application-level ad hoc networking, since it can model the deployment of mobility of mobile terminals on different reachable sub domains. The approach does not support terminals that connect to multiple networks and reconnect to new networks while they are running. This limitation does not lessen the utility of the approach. The model can be extended to support emulation of seamless roaming of terminals, including multi-input multi-output connectivity.
To read this external content in full, download the complete paper from the author archives on line at the Institute.