Mobile Application Testing

Size: px
Start display at page:

Download "Mobile Application Testing"

Transcription

1 Fachhochschule Köln University of Applied Sciences Cologne 07 Fakultät für Informations-,Medien-und Elektrotechnik Studiengang: Master Technische Informatik Mobile Application Testing Serminar Informatik Student: Melissa D. Mulikita Matr.Nr. : Betreuer: Prof. Dr. Hans W. Nissen

2 1 Introduction Challenges of mobile application testing Device Challenges Device simulator/emulator vs. Real target device Software Complexity/ Network Challenges Testing methods and Guidelines for testing Methods of mobile application testing Testing recommendation Weighted Device Platform Matrix Test Automation Tools & Frameworks Android Testing Framework Android Instrumentation Framework Positron Framework Android Instrumentation vs. Positron Framework Sikuli JaBUTi/ME: White Box Testing MobileTest: Black Box Testing List of available testing tools Conclusion List of Literature List of Figures

3 1 Introduction Mobile devices are evolving and becoming more complex with a variety of features and functionalities. Many applications that were originally deployed as desktop applications or web applications are now being ported to mobile devices. In this thesis, a mobile application is defined as an application running on mobile devices and taking in input contextual information. They are either pre-installed on phones during manufacture or downloaded from an application store or through other mobile software distribution platforms. According to Keane a Firm for IT services mobile applications can be categorized into standalone- and enterprise- applications. Standalone applications reside in the device and do not interface with external systems [11]. Enterprise applications must meet the standards for business. They are developed to perform transactions that are resource-intensive and that must meet requirements for maintenance, administration and security. Enterprise applications interface with external systems through Wireless Application Protocol (WAP) or Hyper Text Transfer Protocol (HTTP) [11]. Although mobile applications have limited computing resources they are expected to be agile and reliable like traditional applications. One of the best quality metrics to decide whether a mobile application is agile and reliable is mobile application testing. 2 Challenges of mobile application testing Unlike traditional testing, mobile application testing requires special test cases and techniques. The wide variety of mobile technologies, platforms, networks and devices presents a challenge when developing efficient strategies to test mobile software. This section discusses the challenges that have to be considered while testing mobile applications in comparison with traditional application such as desktop application testing. Although many traditional software testing practices can be applied to the testing of mobile applications, there are numerous technical issues that are specific to mobile applications that need to be considered. Traditional guidelines and methods used in testing of traditional applications may not be directly applicable to a mobile environment. Traditional applications such as desktop applications run on Personal Computers and work stations. Desktop application testing is focused on a specific environment. Complete applications are tested in categories like GUI, functionality, Load, and backend. On client server application two different components are tested. The application is loaded on server machine while the application executes on every client machine. Client server applications are tested in categories like, GUI on both sides, functionality, Load, client-server interaction, backend. This environment is mostly used in Intranet networks. The number of clients and servers is known as well as their locations in the test scenario. 3

4 When testing mobile applications additional test cases should be considered. The test phase should be able to answer these questions: How much battery life does the application use? What good is a mobile device that has to be supplied with electricity just to power the application? How does the application function with limited or no network connectivity? Minimally the application should not crash; ideally the user should not even notice a difference. How fast is the application? Even with slower processors and networks, users still expect desktop speeds out of their mobile devices. How quickly can users navigate the application? With limited attention spans, mobile devices need to be highly intuitive. How much data will the application need? Will users without unlimited data plans or devices without large internal storage be able to use the application? Will peripheral devices affect the application? Whether or not the application uses peripheral devices, these devices affect the processes running in the background, in turn affecting the application. 2.1 Device Challenges Fig. 1: Available mobile manufacturers In the desktop application testing environment, there is one central processing unit platform on which applications are tested. Hardware components of a Personal Computer, such as the disk drives, graphics processor and network adapters have usually been thoroughly tested for compatibility with those operating systems [6]. Display formats and input devices of desktop application fall within a narrow range of choices and are well known. Mobile devices on the other hand consist of a wide range of handsets, each with unique configurations and form factors that can have unpredictable effects on the performance, security and usability of applications [6]. With the boom of smartphones a mobile device usually contains hardware components such as Wi-Fi and Bluetooth network capabilities additional to cellular connectivity, a GPS receiver, multiple input devices, such as a touch-screen and a keypad. Each combination of components interacts in different ways with each other, and with the operating system, to create potential compatibility and performance issues that must be addressed in testing [6]. Mobile application testing has to ensure that the application delivers optimum performance for all configurations of hardware Device simulator/emulator vs. Real target device Ideally when reproducing the production environment, mobile application testing has to be implemented on real target devices so that every possible interaction among hardware/ software component and wireless carrier's network, are tested in the most accurate and reliable environment. A device simulator/emulator is software that simulates/emulates the performance and behavior of real devices. Simulators/ emulator are easier to obtain and less expensive than 4

5 samples of real devices. Simulators/emulators can be beneficial for testing features of the application that are device independent. However, real devices should be used for validating the results. Unfortunately acquiring all target devices to perform manual testing is complex and costly during every stage of testing. As an alternative to both emulators and buying lots of physical devices, service like DeviceAnywhere.com that gives you online access to numerous real devices on various networks could be considered. DeviceAnywhere s phone bank enables access to 2000 different handset models across all major global network operators. 2.2 Software Complexity/ Network Challenges Fig. 2: Available mobile operation systems In addition to hardware-based challenges, tester must handle the complexity of the software environment of mobile devices. To make certain that performance on the same range of mobile devices will work properly, all current versions of the ios4, Windows Mobile, Windows Phone 7, Symbian, Android as well as RIM Blackberry must be addressed. In tradition application testing on the current versions of the Windows, Apple Macintosh and Linux operating systems is adequate to make certain that a desktop application will work properly on most common Personal Computers. The rapid changes of the handset market require that testing methods for the changing cast of operating systems are maintained. Many mobile applications are developed using RAD (rapid application development) in which multiple versions of the software are quickly developed and assessed by end users. This rapid-fire cycle of coding and re-coding makes it impossible to assess how each change affects the application's performance, stability or security [6]. Just as mobile operating systems are constantly changing, so are the networks, protocols and other key elements of the infrastructures used by network providers. Carriers worldwide are upgrading their networks from 2-G to 3-G, and even to 4-G with LTE (Long Term Evolution) networks. [6]. Internet traffic will be upgraded from IPv4 to IPv6 as well. Mobile network carriers provide various levels of bandwidth. Carriers use different methods to tunnel their own traffic into the TCP IP protocol used by the Web, changing how applications receive, transmit and receive data [6]. Different web proxies are used by the carries to define which Web sites users can access as well as how the sites should be displayed on the devices. All of these differences can affect the stability performance or security of a mobile application, and must be tested to assure the end-user experience [6]. Tests must be built and scripts executed in order to check the interaction among the handset and between the application and its components. In addition applications must be tested for their compatibility with the networks on the device they might run on. 5

6 3 Testing methods and Guidelines for testing Although the mobile application testing process is based on traditional testing mobile devices have different testing characteristics that must be kept in mind when deciding which testing methods to use for authentication. In this chapter testing methods used in mobile applications testing are briefly listed and recommendations for optimum testing are given. 3.1 Methods of mobile application testing Unit Testing: Unit testing consists of functional and reliability testing in an Engineering environment. Test cases are written after coding. The purpose of unit testing is to find (and remove) as many errors in the mobile software as possible. Unit testing is also referred to as Component Testing. Integration Testing: Integration testing is testing where modules are combined and tested as a group. Integration testing is any type of software testing that seeks to verify the interfaces between components (modules) against a software design. Integration testing follows unit testing and precedes system testing. System Testing: System testing is conducted on a complete, integrated system to evaluate the system's compliance with the system specified requirements. During system testing the entire system of the mobile application will be tested to meet all the specification specified by the application. System testing falls within the scope of black box testing, and does not require any knowledge of the inner design of the code or logic. Regression testing: Regression testing resembles functional testing. A regression test allows a consistent, repeatable validation of each new release of a mobile application. Regression testing ensures that reported product defects have been corrected for each new release and that no new quality problems were introduced in the maintenance process. Although regression testing can be performed manually the required testing is often automated to reduce time and resources. Compatibility Testing: Compatibility testing ensures compatibility of an application with different native device features. Compatibility testing can be performed manually or can be driven by an automated functional or regression test suite. 6

7 Performance Testing & Stress Testing: Performance testing can be applied to understand mobile application scalability. This sort of testing is particularly useful to identify performance bottlenecks in high use applications. Performance testing generally involves an automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional load conditions. An example of the focus of performance testing is the behavior of mobile application in low resources such as memory and mobile website when many mobile users simultaneously access mobile websites. Black Box Testing/ Functional Testing: Functional testing is testing core functionality of mobile application as per specification and correct performance. This can involve testing of the applications user interface, APIs, database management, security, installation, and networking. Black box testing or functional testing is testing without knowledge of the internal workings of the item being tested. Tests are usually functional except white box testing. White Box Testing/ Structural Testing White box testing is testing based on an analysis of internal workings and structure of a piece of software. White box testing includes techniques such as branch testing and path testing. It is also known as structural testing and glass box testing. UI Testing (User Interface) Testing UI testing is the process of testing an application with a graphical user interface to ensure correct behavior and state of the UI. This includes verification of data handling, control flows, states and display of windows and dialogs. An important aspect in mobile application testing is to ensure consistency of GUI over various devices. 7

8 3.2 Testing recommendation For the types of testing mentioned it is a good idea to use some combination of real device and emulator testing, as recommended in the table below: Fig. 3: Keane s Recommended Strategy for Testing In White Paper: Testing Mobile Business Applications Keane shows a good approach towards testing mobile applications. Fig. 3 lists testing methods into groups. Standard functionality testing should always be considered in mobile application testing. Because of device challenges GUI compatibility testing has to be incorporated in the application testing process in addition to standard testing. The use of test automation, emulators and real devices determines the success of mobile application testing. Enterprise applications must meet requirements for maintenance, administration and security. They are more complex in functionality and architecture and therefore it is important to test enterprise application on performance, security, and synchronization in addition to the standard functionality testing Weighted Device Platform Matrix In order to test mobile application effectively various test combination must be conducted. Repeating the test cases over many hardware and software combinations increases the tedium of test execution [11]. A strategy to optimize tests for various combinations is to adopt a Weighted Device Platform Matrix method. 8

9 According to Keane the matrix is prepared in two steps: Defining parameters of importance With information gained from business requirements, factors that influence the importance of the specific hardware and software combination should be identified. Factors that influence the importance of this combination are: - The total amount of users for a device and operating system - Recommendation of business to conduct test for a particular device or operating system The factors are weighed and then relative weights are assigned to each of the devices and OS [11]. Preparing matrix for all possible combinations After defining parameters of importance, a matrix representing the results for each combination, is prepared. The result is the product of relative weights of devices and operating systems [11]. The criticality of combination is proportional to the result. A high result indicates high criticality. Based on the criticality of the combination, the required degree of coverage can be determined [11]. Fig. 4: Weighted Device Platform Matrix 9

10 4 Test Automation Tools & Frameworks Testing mobile applications is traditionally done by manual execution of test cases and visual verification of the results. However, it is very time-consuming. Using automation tools and testing frameworks yields quantifiable benefits and is recommended. Test automation is done by using software to control the execution of tests and compare actual results to expected result. With test automation testers have the possibility to set up test preconditions, to automate test control and test reporting functions. Automated testing offers fast, repeatable and comprehensive test execution, including overnight or over-weekend test runs [6]. However the investment in tools, test-srcipt development and data collection is required and is and is not amenable to fast-changing requirements [6]. Because mobile application are focused on user interaction testing mobile GUI applications raises special challenges. The event-driven nature of GUIs makes GUI applications nondeterministic; the user can click anywhere on the screen [3]. Mobile applications are focused on good user experience than traditional applications. Today s high-resolution displays of mobile devices offer increasing capabilities in user interaction experiences. The development platform for mobile application which is a Personal Computer is different from the target platform which is a handheld device. It is impossible to test the various possible states a GUI can have. Because of these unlimited testing scenarios mobile GUI testing is more difficult compared to functional testing of desktop application. Manual GUI testing is very error prone and hardly reproducible, and causes very high effort [3]. A solution to the mentioned problems is automated GUI testing for mobile applications. The idea of automated GUI testing is to develop testing scripts which simulate user interactions with the GUI application and verify the correct behavior, state and control flow in the GUI to discover possible deviations from the expected behavior [3]. GUI testing is conducted to clarify required functionalities of the application from the user perspective. 10

11 4.1.1 Android Testing Framework The Android testing framework provides powerful tools for testing mobile applications. The following diagram summarizes the testing framework of Android: Fig. 5: Testing framework of Android The Android SDK (Software Development Kit) consists of tools for developing and testing android based mobile application. The Android SDK tools are available as Plug-in in Eclipse with ADT (Android Development Tools), and in command-line form for use with other IDES (Integrated development environment). The SDK tools get information from the project of the application under test and use this information to automatically create the build files, manifest file, and directory structure for the test package. The SDK also provides monkeyrunner, an API testing devices with Python programs, and UI/Application Exerciser Monkey, a command-line tool for stress-testing UIs by sending pseudo-random events to a device. The next sections introduce two android testing frameworks and list their differences, advantages and disadvantages Android Instrumentation Framework The Android Instrumentation Framework is a powerful testing tool and is integrated in the Android SDK. Instrumentation refers to the ability to monitor and diagnose an application by inserting tracking code, debugging techniques, performance counters, and event logs into the code, which also allow measuring the applications performance and controlling its behavior.[3] The Android Instrumentation Framework provides supporting test classes which allows starting, running, controlling and terminating an application in test mode [3]. 11

12 Fig. 6: Android Instrumentation Framework Class Diagram As one can see in Fig. 6, the Android Instrumentation Framework extends the JUnit framework. The ActivityInstrumentationTestCase2 extends the JUnit core TestCase class [3]. Using the instrumentation framework is easy for experienced JUnit developers because it is based on the JUnit Framework. This allows using the standard JUnit assert-functionality for verifying expected and actual behavior in the GUI caused by user interactions or fired events [3]. In Android Activities represent a screen of the application. Each activity consists of different groups of UI elements and has independent lifecycle. Because it consists of so many units, each activity can be tested separately. Android instrumentation provides the special class ActivityInstrumentationTestCase2 for this testing level [3]. A GUI test is important for testing process related to the UI elements in the activity or a specific expected user behavior. Listing 1 shows the general Test structure for an instrumentation test class. The extracted source code in listing 1displays a test where a new person is added to a list of contacts and the correct behavior and state of the GUI are verified With the Android Instrumentation Framework sending key strokes to the selected control is provided by using the sendkeys() method to simulate specific user interactions. In Listing sendkeys() is used to enter the surname of a person. The save method simulates a Save button on a real device and execute the actual test as a Runnable. The Runnable class includes event call and the assertions [3]. The overloaded run() method is passed to the UI thread which runs in parallel with the activity being tested. public TestDemo(String pkg, Class<Demo>activityClass) { public TestDemo(){ super("org.demo", Demo.class);//Bundle activity } protected void setup() throws Exception { super.setup(); final Demo2 a = getactivity();//instance Activity /*Bundle widgets by id in file R*/ surname=(textview)a.findviewbyid(r.id.surname); } 12

13 public void test1addperson (){ sendkeys( KeyEvent.KEYCODE_T); //Type a letter sendkeys( KeyEvent.KEYCODE_O); //Type a letter sendkeys( KeyEvent.KEYCODE_O); //Type a letter //runnable for save button action event Runnable saverun = new Runnable() { public void run() { save.performclick();//simulate click event p=getactivity().getperson();//get data from UI save.setenabled(false);//set UI element status Assert.assertFalse(save.isEnabled()); Listing 1: Test Class Structure with Android Instrumentation Framework Finally the tests are compiled and bundled as an independent instance of the application Positron Framework The Positron framework is a client-server model built on top of the Android Instrumentation Framework to handle the activity s resources, offering a high-level approach for writing and running test cases [3]. Each test case is a client, which connects to a server component that runs the activity. The framework provides infrastructure for communication as well as services for the server. The communication network services use the Android Debug Bridge (adb) to establish the connection between the server and the clients [3]. For each client test method an instance of an activity is created to communicate with. The Positron framework is thread-safe, which is important to control the UI elements and their events running in a separate thread [3]. In order to access activity resources the framework uses paths that are dot-separated as shown in Listing 2. The activity is a container of UI elements, which are arranged in a hierarchy. The test class extends the class TestCase. The structure of the test class is similar to the structure of the standard JUnit test class [3]. Verifications about behaviors and data are made by "asserts" just like in JUnit. Listing 2 shows test class written with Positron and methods such as pause(), press() and click() used to simulate user interactions with the GUI. public class AddRecord extends TestCase public void runbeforeeverytest() { //Start the activity in test mode startactivity("org.demo.demo","org.demo.demo2.demo2"); pause(); //Wait for the requested answer press("name", DOWN); //Simulate typing a word click();//simulate click event in a focused UI element public void addperson() throws InterruptedException { /*Assert state*/ asserttrue( "not click", booleanat("save.ispressed")); field1=stringat("listview.1.0.text");//get string } } Listing 2: Test Class Structure with Positron 13

14 Positron provides a set of test methods representing user tasks for each test class. This ensures that test can be run independently of each other. Positron also provides synchronization mechanism between applications under test and tests for concurrent access of GUI elements during the testing Android Instrumentation vs. Positron Framework Comparing both Android Frameworks, the Android Instrumentation Framework is a low-level API that simulates user interactions while Positron provides an abstracted comfortable highlevel interface for writing GUI tests [3]. The Android Instrumentation Framework accesses context and widget of the activity to validate directly during testing which ensures efficient runtime and fast response. The Positron Framework however has to connect to the application under test each time the test class needs to use activity resources. This slows down the test runtime execution. Because of its low-level API the Android Instrumentation Framework requires writing more test code, which increases error rate and also causes higher maintenance effort. The Positron framework provides a high-level interface for writing automated GUI tests, which reduces the effort, for both, writing and maintaining test code significantly. Strengths of both frameworks are: - use of instrumentation for handling UI resources through the activity - user interactions simulation by sending key events - execution on the target platform - usage of standard JUnit assertions to verify GUI behavior and states. Weaknesses of both frameworks are - tester must have a detailed knowledge of the source code under test to find the UI resources in the code Sikuli Sikuli Test is a GUI testing framework that enables automation testing tasks. It allows testers to write visual scripts to automate tests, to refer to GUI objects by their visual representation directly, and to provide robustness to changes in spatial arrangements of GUI components [7]. The script uses action statements to simulate the interactions and assertion statements to visually verify the outcomes of the interactions. Test scripts under Sikuli Test are written to test traditional desktop GUI applications on Windows and Mac OSX, as well as mobile applications in an Android emulator and ios simulators. 14

15 Fig. 7: Sikuli Test Interface To simulate interactions involved in a test case, action statements using the API defined in Sikuli Script can be written. Sikuli Script is a visual automation system that provides a library of functions to automate user inputs such as mouse clicks and keystrokes [7]. These library functions transform taken screenshots of GUI components into arguments. Given the image of a component, Sikuli Script searches and tests the whole screen for the component to deliver the actions. Since Sikuli Script is based on a full scripting language, Python, it is possible for QA testers to programmatically simulate a large variety of user interactions, simple or complex [7]. Sikuli Test provides two visual assertion functions. Outcomes of a test are verified by using these Visual Assertion Statements. These two assertion functions are: - assertexist(image or string [, region]) asserts that an image or string should appear on screen or in a specific screen region - assertnotexist(image or string [, region]) asserts that an image or a string should not appear on screen or in a specific screen region Sikuli Test also provides a record-playback utility that enables automation of GUI testing. The operation of a GUI can be described as a cycle consisting of actions and feedback [7]. 15

16 While testing actions to operate a GUI it is important to verify if the visual feedback equals the expected actions. With the record-playback mechanism, the testers can demonstrate the interactions involved in the test case [7]. During recorded playback the actions as and the screen are recorded and translated into a sequence of action and assertion statements automatically [7]. When the script is being executed the action statements can replicate the actions. The assertion statement can also verify if the automated interactions brings the desired visual feedback. Sikuli Script supports testing by minimizing the effort needed to write test scripts. Sikuli Test currently has two limitations: - Sikuli Test is unable to detect unexpected visual feedback - Sikuli Test is unable to test the GUI s internal functionalities. 4.2 JaBUTi/ME: White Box Testing White box testing is a technique based on the internal structure of a given implementation, from which the test requirements are derived. In general, white box testing criteria use a representation known as Control Flow Graph (CFG) to abstract the structure of the program or of part of the program, as a procedure or method [4]. JaBUTi (Java Bytecode Understanding and Testing Tool) is a complete tool suite for understanding and testing Java programs and Java-based components. JaBUTi differs from other testing tools because it performs the static and analysis directly on Java Bytecode not on the Java source code [4]. In order to apply the structural testing techniques, a tool is necessary to perform static analysis, code instrumentation, requirement computation or coverage analysis. JaBUTi performs the given tasks: - Static analysis the program is parsed and the control- and data-flow information is abstracted in the form of def-use graphs. Other information, as for instance, call graphs, inter-method control-flow graphs and data-flow data can also be gathered. - Requirement computation based on the information collected in the task above, JaBUTi computes the set of testing requirements. Such requirements can be a set of nodes, edges or def-use associations. - Instrumentation in order to measure coverage, i.e., to know which requirements have been exercised by the test cases, it is necessary to know which pieces of the code have been executed. The most common way to do this is by instrumenting the original code. Instrumentation 16

17 consists of inserting extra code in the original program, in such a way that the instrumented program produces the same results of the original program and, in addition, produces a list of traces, reporting the program execution. - Execution of the instrumented code a test is performed using the instrumented code, instead of the original program. If it behaves inappropriately, a fault is detected. Otherwise, a trace report is generated and the quality of the test set can be assessed based on such a report. - Coverage analysis confronting the testing requirements and the paths executed by the program, the tool can compute how many of the requirements have been covered. It can also give an indication of how to improve the test set by showing which requirements have not been satisfied. The extension of JaBUTi to deal with mobile environment is named JaBUTi/ME. With JaBUTi/ME it is possible to execute the test case on the real environment and still apply structural testing criteria with the supporting tool [4]. Fig. 8: Server based testing JaBUTi/ME When instrumenting code some parameters in JaBUTi are defined that can be chosen when testing a mobile application. These parameters are: address of the test server, identification name of the program being tested, name of the file used for temporary storage of trace data, minimum amount of available memory and keep or not the connection. - The address of the test server determines the IP address and the port to which the connection to send trace data should be established 17

18 - The identification name of the programming being tested allows the instrumented code to identify itself to the test server when sending trace data. - The name of the file used for temporary storage of trace data is optional. If provided, t instructs the code inserted in the instrumented code to store all the trace data until the end of execution and the, send it at once to the test server. The data is stored in a tem file in the mobile device s file system. - The minimum amount of available memory is a parameter, which helps tester to determine the amount of memory that could be used by the instrumented code to store and trace data before deciding to send it to the test server. - Keep or not the connection is a parameter that controls the connection behavior. The ordinary behavior of instrumented code is to create a single connection with the test server at the beginning of the execution of test case and keep the connection open until the program end. If the cost of keeping the connection open is restrictive, this parameter can be used to instruct the instrumented code to create a connection each time it is needed. 4.3 MobileTest: Black Box Testing An automatic black box testing tool for mobile devices introduced in this Chapter is MobileTest. With MobileTest building maintainable and reusable test cases for testing system level and application level software on various mobile devices is possible. MobileTest observes the input and output information of an application. From the input perspective, a mobile application receives two kinds of inputs [6]. The first input is form the user GUI such as keyboard events, touch events. The second input is environmental context events. MobileTest enables support to test features such as interactive operations, volume, multiple states, boundary test and multiple task [2]. 18

19 MobileTest architecture The architecture of Mobile Test subdivides the system environment into layers to reduce the complexity the system. Each layer provides services to upper layers with the support of lower layers. In this way, the test control layer can be separated from the characteristics of the underlying devices. Fig. 9: MobileTest architecture According to Bo, Xiang and Xiopeng the system is composed of four layers [6]: 1) The User Interface Layer interacts with testers. It runs on the workstation. 2) The Test Control Layer executes the test scripts. It sends simulated operations to target devices, receives screenshots and sensitive events from the target devices and further controls the test process according to sensitive events. This layer also runs on the workstation. 3) The Communication Layer connects the Test Control Layer and the Device Agent Layer. It runs on the workstation and target devices. 4) The Device Agent Layer receives commands from upper layer, executes them and sends the status of the target back. 19

20 The basic usage scenario of MobileTest is shown in Figure 10: Fig. 10: Basic usage of MobileTest Relating to Figure 10 the basic usage is explained: 1) Make configurations on the target device and the test environment. 2) Make test plans and write test scripts in the script editor manually or generate test scripts using the virtual devices. 3) Scripts are scheduled to run. 4) When scripts are interpreted, the script interpreter uses the uniform interfaces provided by communication layer to send simulated keys or other input information to the Device Agent running in the target device and then the script interpreter suspends itself [6]. 5) Device Agent simulates the keys in the target device and returns the screenshots and results to the process monitor module with the help of the communication module. The Device Agent may also notify the test process monitor about the sensitive events automatically [6]. 6) After receiving feedback, the test process monitor will activate the script interpreter. The next statements are saved as test results in the test resource library. 20

21 4.4 List of available testing tools The table below gives a list of available testing frameworks with the platforms they can be tested on. Automation Tools Platforms Sikuli ios/android OS Robotium Android OS Perfecto Mobile Blackberry OS UISpec ios /Windows Mobile eggplant Symbian MonkeyTalk ios/webos/android OS Positron Android OS Fledge RIM QTP ios/webos/android OS CTS Android OS MObilePBDB PJUnit Hermes J2MEUnit GlassfajrToolkit J2ME JaBUTi MobileTest Java based components Fig. 11: Available mobile automation testing tools and the platforms they run on Fledge: BlackBerry device simulator that enables mobile application testing on a Personal Computer. Tests, various connectivity and state changes can be simulated. MonkeyTalk (formerly known as FoneMonkey): offers the possibilities to save a script, load, read and modify it. FoneMonkey is designed to support developers and quality control tests. Tests of FoneMonkey can be easily incorporated into different integration environments. FoneMonkey automates testing on ios simulators, Android emulators or real devices. QTP (QuickTest Professional): is an automated testing tool provided by HP/Mercury Interactive. QTP uses VB scripting language to build its flows. It provides automated and regression testing and also generates test scripts that can be executed on local or remote mobile devices. QTP utilizes add-in architecture for compactness and extensibility: - SeeTest TM developed by Experitest is a mobile test automation tool for iphone, Android, Blackberry, and Window Mobile that plugs into QTP. 21

22 - DeviceAnywhere has integrated its mobile test automation platform with QTP to enable testers to access DeviceAnywhere through their QTP environment - MobileCloud developed by Perfecto Mobile plugs QTP to offer native QTP scripting and flow control together with cloud-based automated mobile testing technology. CTS (Compatibility test Suit): runs on Personal Computer and manages test execution. Individual test cases are executed on attached mobile devices or on an emulator. The test cases are written in Java as JUnit tests and packaged as Android.apk files to run on the actual device target. UISpec: Behaviour Driven Development framework for the iphone that provides a full automated testing solution that drives the actual iphone UI. It is modelled after the very popular RSpec for Ruby. MObilePBDB (Mobile Performance Benchmark Database): method for performance unit testing in an emulator-based test environment after data is collected from benchmark testing in a real target device PJUnit: tool for performance testing at the unit test level. It measures the time taken between methods and finds the methods that are frequently called in a specified program, which helps enhance performance and identify the bottle-neck section by removing unnecessary code and preventing object creation [1]. White box automation testing tools Other testing tools supporting functional control-flow and data flow testing are J2MEUnit and GlassjarToolkit. However J2MEUnit and GlassfajrToolkit allow the testing only on computer desktop through emulators and not like JaBUTi directly on the handheld device. Black box automation testing tools Hermes: black box automation tool for testing J2ME applications. Hermes supports application independence, and open interfaces for extensibility. It manages testing of an application on physical devices. In Hermes tests are represented according to an XML schema that is generic to allow multi-faceted tests concerning an application s function, aesthetics and operating environment to be described [5]. Eggplant: black box automation tool that runs on Mac OSX and Linux. It can test applications on a vast range of other platforms because it connects to and controls them using VNC (Virtual Network Computing). Robotium: black box automation tool for Android Mobile Application. Robotium is a UI testing tool. The Framework provides API s to test various kinds of Widgets/UI present in mobile applications developed with android SDK 22

23 5 Conclusion Application development for mobile devices is evolving. The strategies presented in this thesis discuss the differences between mobile device applications and how important it is to plan a test strategy that is mobile-specific. Unique challenges like device challenges and software challenges of mobile devices need to be considered because traditional testing does not cover all characteristic important for mobile application. The use of automation test tools and test methods should be conducted for a successful testing result. Below is a final guideline for testing mobile application 1) Network landscape and device landscape should be understood before testing to identify bottlenecks. 2) Testing in real-environment should be conducted 3) Adequate Automation test tool should be used. Rules for an ideal tool are: - One tool should support all desired platforms. The tool should support testing for various screen types, resolutions, and input mechanisms - such as touchpad and keypad. - The tool should be connected to the external system to carry out end-toend testing. 4) Weighted Device Platform Matrix method should be used to identify the most critical hardware/ platform combination to test. This method is very useful especially when hardware/ platform combinations are high and time to test is low. 5) End-to-end functional flow in all possible platforms should be checked at least once. 6) Performance testing, GUI testing, and compatibility testing using actual devices should be conducted. Even if the tests can be done using emulators, testing with real devices is recommended. 7) Performance should be measured only in realistic conditions of wireless traffic and user load. 23

24 6 List of Literature [1] Heejin Kim, Byoungju Choi, W. Eric Wong, Performance Testing of Mobile Applications at the Unit Test Level, Third IEEE International Conference on Secure Software Integration and Reliability Improvement, 2009 [2] Jiang Bo, Long Xiang, Gao Xiaopeng, MobileTest: A Tool Supporting Automatic Black Box Test for Software on Smart Mobile Devices, AST'07, Proceedings of the Second International Workshop on Automation of Software Test, 2007 [3] Martin Kropp, Pamela Morales, Automated GUI Testing on the Android Platform, ICTSS, Proceedings of the International Conference on Testing Software and Systems, 2010 [4] M.E. Delemaro, A. M. R. Vincenzi, J.C. Maladonado, A strategy to perform coverage testing of mobile applications, AST 06, Proceedings of the 2006 international workshop on Automation of software Test, 2006 [5] Sakura She, Sasindran Sivapalan, Ian Warren, Hermes: A Tool for Testing Mobile Device Applications, Australian Software Engineering Conference, 2009 [6] Selvam R, Dr Karthikeyani V, Mobile Software Testing Automated Test Case Design Strategies, ISSN: , Vol. 3 No. 4 Apr 2011 [7] Tanya Dumaresq, Matt Villeneuve, Test Strategies for Smartphones and Mobile Devices 2010 Macadamian Technologies Inc, 2010 [8] Tsung-Hsiang Chang, Tom Yeh, Robert C. Miller, GUI Testing Using Computer Vision, CHI 2010, April 10 15, 2010, Atlanta, Georgia, USA Copyright 2010 [9] Zhang, D. and Adipat, B. (2005), Challenges, Methodologies, and Issues in the Usability Testing of Mobile Applications, Proceedings of the International Journal of Human Computer Interaction (IJHCI), vol. 18, nº 3, 2005, p [10] Logigear Magazin, Mobile Application Testing, November 2011 Volume V Issue 7, [11] White Paper: Testing Mobile Business Applications. Available at < Access to: 20 May 2012 [12] [13] [14] ebook: A Guide to Mobile App Testing, utest, Inc. Available at < > 24

25 7 List of Figures Fig. 1: Available mobile manufacturers... 4 Fig. 2: Available mobile operation systems... 5 Fig. 3: Keane s Recommended Strategy for Testing... 8 Fig. 4: Weighted Device Platform Matrix... 9 Fig. 5: Testing framework of Android Fig. 6: Android Instrumentation Framework Class Diagram Fig. 7: Sikuli Test Interface Fig. 8: Server based testing JaBUTi/ME Fig. 9: MobileTest architecture Fig. 10: Basic usage of MobileTest Fig. 11: Available mobile automation testing tools and the platform they run on

Cross Platform Mobile. -Vinod Doshi

Cross Platform Mobile. -Vinod Doshi Cross Platform Mobile Application Testing -Vinod Doshi Objective Mobile Application Testing Needs. Challenges Current platform specific tools Cloud Testing Testing Strategies and Recommendations Generic

More information

International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] ISSN: 2349-6495

International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] ISSN: 2349-6495 International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] Survey on Automation Testing Tools for Mobile Applications Dr.S.Gunasekaran 1, V. Bargavi 2 1 Department

More information

Review of Mobile Applications Testing with Automated Techniques

Review of Mobile Applications Testing with Automated Techniques Review of Mobile Testing with Automated Techniques Anureet Kaur Asst Prof, Guru Nanak Dev University, Amritsar, Punjab Abstract: As the mobile applications and mobile consumers are rising swiftly, it is

More information

Automation Testing in Mobile Applications Swati Hajela

Automation Testing in Mobile Applications Swati Hajela Automation Testing in Mobile Applications Swati Hajela Test Engineer QAI's International Software Testing Conference 2012 Agenda Overview Objectives of the Research Paper Challenges : Mobile Application

More information

Mobile Application Testing

Mobile Application Testing Mobile Application Testing Whitepaper Author: Scott Aziz Date: June 1, 2012 This whitepaper outlines the critical areas of testing needed to certify mobile enterprise applications Best practices from UST

More information

Automated testing for Mobility New age applications require New age Mobility solutions

Automated testing for Mobility New age applications require New age Mobility solutions Automated testing for Mobility New age applications require New age Mobility solutions Executive Summary Today, mobile phone has transformed from its former role as a mere medium of communication to that

More information

Testing Mobile Applications

Testing Mobile Applications Testing Mobile Applications Published by 360logica software testing Services (www.360logica.com ) [ Testing Mobile applications ] Copyright 2011@ 360logica software testing services Testing Mobile Applications

More information

SOFTWARE TESTING TRAINING COURSES CONTENTS

SOFTWARE TESTING TRAINING COURSES CONTENTS SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software

More information

Image Area. White Paper. Best Practices in Mobile Application Testing. - Mohan Kumar, Manish Chauhan. www.infosys.com

Image Area. White Paper. Best Practices in Mobile Application Testing. - Mohan Kumar, Manish Chauhan. www.infosys.com Image Area White Paper Best Practices in Mobile Application Testing - Mohan Kumar, Manish Chauhan www.infosys.com Contents Introduction 3 QA Challenges in Mobile Application Testing 3 Device Variation

More information

Syllabus Version 1.2.8.

Syllabus Version 1.2.8. Syllabus Version 1.2.8. 0. Introduction to This Syllabus... 4 0.1 Purpose of this Document... 4 0.2 Cognitive Level of Knowledge... 4 0.3 The Examination... 5 0.4 Business Outcome... 5 0.5 Specialization...

More information

Mobile Device and Technology Characteristics Impact on Mobile Application Testing

Mobile Device and Technology Characteristics Impact on Mobile Application Testing 13 Mobile Device and Technology Characteristics Impact on Mobile Application Testing TINA SCHWEIGHOFER AND MARJAN HERIČKO, University of Maribor Mobile technologies have a significant impact on processes

More information

Introduction to Automated Testing

Introduction to Automated Testing Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases

More information

AndroLIFT: A Tool for Android Application Life Cycles

AndroLIFT: A Tool for Android Application Life Cycles AndroLIFT: A Tool for Android Application Life Cycles Dominik Franke, Tobias Royé, and Stefan Kowalewski Embedded Software Laboratory Ahornstraße 55, 52074 Aachen, Germany { franke, roye, kowalewski}@embedded.rwth-aachen.de

More information

WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING

WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING 1 The basic frame of software testers mind-set is attuned to check documentation, functionality, stability, API and performance and make sure that

More information

Following statistics will show you the importance of mobile applications in this smart era,

Following statistics will show you the importance of mobile applications in this smart era, www.agileload.com There is no second thought about the exponential increase in importance and usage of mobile applications. Simultaneously better user experience will remain most important factor to attract

More information

Published on: November 2011 Author: Vinayak Gaur \ Vijayaraghavan Ragunathan \ Vishnu Prakash

Published on: November 2011 Author: Vinayak Gaur \ Vijayaraghavan Ragunathan \ Vishnu Prakash Mobile Test Automation Solutions Published on: November 2011 Author: Vinayak Gaur \ Vijayaraghavan Ragunathan \ Vishnu Prakash Hexaware Technologies. All rights reserved. Table of Contents 1. Introduction

More information

101-301 Guide to Mobile Testing

101-301 Guide to Mobile Testing 101-301 Guide to Mobile Testing Perfecto Mobile & Toronto Association of System and Software Eran Kinsbruner & Joe Larizza 2014 What To Do? Great News Your first Mobile Project has arrived! You have been

More information

Monitoring and control of users in open environments on the Android platform

Monitoring and control of users in open environments on the Android platform Monitoring and control of users in open environments on the Android platform DEGREE IN COMMUNICATIONS SYSTEMS ENGINEERING AUTHOR: TUTOR: Eric Bella Pulgarín Raúl Sánchez Reillo DIRECTOR: Aitor Mendaza

More information

Is Your Mobile Application Ready For Business?

Is Your Mobile Application Ready For Business? Is Your Mobile Application Ready For Business? It is clear that mobile technologies will transform the enterprise. The simple math is that if information and communications are available at any place and

More information

Mobile App Testing Guide. Basics of Mobile App Testing

Mobile App Testing Guide. Basics of Mobile App Testing 2015 Mobile App Testing Guide Basics of Mobile App Testing Introduction Technology is on peek, where each and every day we set a new benchmark. Those days are gone when computers were just a machine and

More information

Software Automated Testing

Software Automated Testing Software Automated Testing Keyword Data Driven Framework Selenium Robot Best Practices Agenda ² Automation Engineering Introduction ² Keyword Data Driven ² How to build a Test Automa7on Framework ² Selenium

More information

Business Application Services Testing

Business Application Services Testing Business Application Services Testing Curriculum Structure Course name Duration(days) Express 2 Testing Concept and methodologies 3 Introduction to Performance Testing 3 Web Testing 2 QTP 5 SQL 5 Load

More information

Mobile Application Testing

Mobile Application Testing Mobile Application Testing Mobile applications are booming,so mobile apps are big business, but with this hyper-growth comes the challenge of releasing apps that are stable on multiple portable devices

More information

Mobile Performance Testing Approaches and Challenges

Mobile Performance Testing Approaches and Challenges NOUS INFOSYSTEMS LEVERAGING INTELLECT Mobile Performance Testing Approaches and Challenges ABSTRACT Mobile devices are playing a key role in daily business functions as mobile devices are adopted by most

More information

Syllabus Version 2.5_R (04.04.2016)

Syllabus Version 2.5_R (04.04.2016) Syllabus Version 2.5_R (04.04.2016) CMAP-F-Syllabus V2.5_EN, 04.04.2016 Page 1 of 15 0. Introduction to This Syllabus... 4 0.1 Purpose of this document... 4 0.2 Cognitive Levels of Knowledge... 4 0.3 The

More information

Lee Barnes, CTO Utopia Solutions. Utopia Solutions

Lee Barnes, CTO Utopia Solutions. Utopia Solutions Mobile Technology Testing Are You Ready? Lee Barnes, CTO Utopia Solutions Agenda 1. Mobile Testing Challenges 2. Mobile Testing Practices 3. Mobile Test Automation 4. Summary and Q & A Mobile Testing Challenges

More information

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Reminders. Lab opens from today. Many students want to use the extra I/O pins on Reminders Lab opens from today Wednesday 4:00-5:30pm, Friday 1:00-2:30pm Location: MK228 Each student checks out one sensor mote for your Lab 1 The TA will be there to help your lab work Many students

More information

Perfect Your Mobile App with Load Testing and Test Automation

Perfect Your Mobile App with Load Testing and Test Automation Wipro & Experitest Co-webinar: Perfect Your Mobile App with Load Testing and Test Automation June 2015 Speakers Guy Arieli CTO Experitest Sudheer Mohan Director - Mobility Certification & Automation Wipro

More information

Automation using Selenium

Automation using Selenium Table of Contents 1. A view on Automation Testing... 3 2. Automation Testing Tools... 3 2.1 Licensed Tools... 3 2.1.1 Market Growth & Productivity... 4 2.1.2 Current Scenario... 4 2.2 Open Source Tools...

More information

Skynax. Mobility Management System. System Manual

Skynax. Mobility Management System. System Manual Skynax Mobility Management System System Manual Intermec by Honeywell 6001 36th Ave. W. Everett, WA 98203 U.S.A. www.intermec.com The information contained herein is provided solely for the purpose of

More information

Performance Testing Process A Whitepaper

Performance Testing Process A Whitepaper Process A Whitepaper Copyright 2006. Technologies Pvt. Ltd. All Rights Reserved. is a registered trademark of, Inc. All other trademarks are owned by the respective owners. Proprietary Table of Contents

More information

A Strategy to Perform Coverage Testing of Mobile Applications

A Strategy to Perform Coverage Testing of Mobile Applications A Strategy to Perform Coverage Testing of Mobile Applications M. E. Delamaro Centro Universitário Eurípides de Marília Marília, Sao Paulo, Brazil delamaro@fundanet.br A. M. R. Vincenzi Instituto de Informática

More information

Software Development Kit

Software Development Kit Open EMS Suite by Nokia Software Development Kit Functional Overview Version 1.3 Nokia Siemens Networks 1 (21) Software Development Kit The information in this document is subject to change without notice

More information

Introduction to Android

Introduction to Android Introduction to Android Poll How many have an Android phone? How many have downloaded & installed the Android SDK? How many have developed an Android application? How many have deployed an Android application

More information

MOBILE APPLICATION TESTING. TekMindz s Testing solutions for enterprises INDZ TM TEK

MOBILE APPLICATION TESTING. TekMindz s Testing solutions for enterprises INDZ TM TEK MOBILE APPLICATION TESTING TekMindz s Testing solutions for enterprises TEK INDZ TM Mobile Testing Strategy There are unique challenges in testing mobile applications. The challenges are mainly due to

More information

Running a Program on an AVD

Running a Program on an AVD Running a Program on an AVD Now that you have a project that builds an application, and an AVD with a system image compatible with the application s build target and API level requirements, you can run

More information

STeP-IN SUMMIT 2013. June 18 21, 2013 at Bangalore, INDIA. Enhancing Performance Test Strategy for Mobile Applications

STeP-IN SUMMIT 2013. June 18 21, 2013 at Bangalore, INDIA. Enhancing Performance Test Strategy for Mobile Applications STeP-IN SUMMIT 2013 10 th International Conference on Software Testing June 18 21, 2013 at Bangalore, INDIA Enhancing Performance Test Strategy for Mobile Applications by Nikita Kakaraddi, Technical Lead,

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

Sample Exam Foundation Level Syllabus. Mobile Tester

Sample Exam Foundation Level Syllabus. Mobile Tester Sample Exam Foundation Level Syllabus Mobile Tester September 2015 American Software Testing Qualifications Board Sample Exam Foundation Level Syllabus Mobile Tester MOB-1.2.1 (K2) Explain the expectations

More information

BCS Bristol Autumn School Testing your App. Jim Thomas Director of Software Testing

BCS Bristol Autumn School Testing your App. Jim Thomas Director of Software Testing BCS Bristol Autumn School Testing your App Jim Thomas Director of Software Testing TVS background TVS UK (2008) TVS Germany (2011) TVS France (2012) T&VS India (2011) Delivering tailored solutions for

More information

Cognizant Mobility Testing Lab. The faster, easier, more cost-effective way to test enterprise mobile apps.

Cognizant Mobility Testing Lab. The faster, easier, more cost-effective way to test enterprise mobile apps. Cognizant Mobility Testing Lab The faster, easier, more cost-effective way to test enterprise mobile apps. Be Cognizant 2 MOBILE APP TESTING REINVENTED With Cognizant Mobility Testing Lab You Will Save

More information

A GUI Crawling-based technique for Android Mobile Application Testing

A GUI Crawling-based technique for Android Mobile Application Testing 3th International Workshop on TESTing Techniques & Experimentation Benchmarks for Event-Driven Software Berlin, Germany March 21, 2011 A GUI Crawling-based technique for Android Mobile Application Testing

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu raducu.ionescu@gmail.com Faculty of Mathematics and Computer Science University of Bucharest Content Key concepts

More information

Comparative Study of Automated testing techniques for Mobile Apps

Comparative Study of Automated testing techniques for Mobile Apps Comparative Study of Automated testing techniques for Mobile Apps Anureet Kaur, Dr.Kulwant Kaur, Amritpal Singh Ph.D., Research Scholar, PTU, Jalandhar(India), Dean and Asst Prof, Apeejay Institute of

More information

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012 Android Development Lecture 1 Android SDK & Development Environment Università Degli Studi di Parma Lecture Summary - 2 The Android Platform Android Environment Setup SDK Eclipse & ADT SDK Manager Android

More information

Test What You ve Built

Test What You ve Built Test What You ve Built About Your Presenter IBM i Professional for 16 Years. Primary Focus is IBM i Engineering / Programming Well Versed in 2E. Well Versed in RPG (All Flavors) Well Versed in CM Products

More information

GUI Test Automation How-To Tips

GUI Test Automation How-To Tips www. routinebot.com AKS-Labs - Page 2 - It s often said that First Impression is the last impression and software applications are no exception to that rule. There is little doubt that the user interface

More information

Speed to Market in Mobile Development

Speed to Market in Mobile Development Speed to Market in Mobile Development Finding the right solution with continuous integration on real devices Tina Su, Director of Development, Intuit About me Nearly 20 years of industry experience in

More information

"It's a Phone First! How to Test Your Five-star Mobile Apps"

It's a Phone First! How to Test Your Five-star Mobile Apps BW4 Concurrent Session 11/7/2012 10:15 AM "It's a Phone First! How to Test Your Five-star Mobile Apps" Presented by: Will Hurley Quality and Security Services Brought to you by: 340 Corporate Way, Suite

More information

12 October 2012 White paper. Best Practices in Mobile Application Testing

12 October 2012 White paper. Best Practices in Mobile Application Testing 12 October 2012 White paper Best Practices in Mobile Application Testing The basic frame of software testers mindset is attuned to check documentation, functionality, stability, API and performance and

More information

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, Mobile Testing Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, usability and consistency. A mobile application

More information

Copyrighted www.eh1infotech.com +919780265007, 0172-5098107 Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

Copyrighted www.eh1infotech.com +919780265007, 0172-5098107 Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh), Content of 6 Months Software Testing Training at EH1-Infotech Module 1: Introduction to Software Testing Basics of S/W testing Module 2: SQA Basics Testing introduction and terminology Verification and

More information

RhoMobile Suite. Develop applications for the next generation of business mobility

RhoMobile Suite. Develop applications for the next generation of business mobility RhoMobile Suite Develop applications for the next generation of business mobility With the Motorola Solutions RhoMobile Suite application development platform, you ll never have to write more than one

More information

ASHVINS Group. Mobile Application Testing Summary

ASHVINS Group. Mobile Application Testing Summary ASHVINS Group Mobile Application Testing Summary Mobile Application Testing Challenges Unique challenges with mobile applications; device compatibility, OS compatibility, UI compatibility, browser compatibility

More information

Contents. Executive Summary 3. A Summary of Mobility Challenges 4. Mobile Platform Capability: 6. Mobile Functional Testing 8. Mobile Performance: 10

Contents. Executive Summary 3. A Summary of Mobility Challenges 4. Mobile Platform Capability: 6. Mobile Functional Testing 8. Mobile Performance: 10 by Laura Paterson Contents Executive Summary 3 A Summary of Mobility Challenges 4 Mobile Platform Capability: 6 Mobile Functional Testing 8 Mobile Performance: 10 Summary 11 2 Executive Summary The increasing

More information

Challenges and Pains in Mobile Apps Testing

Challenges and Pains in Mobile Apps Testing Challenges and Pains in Mobile Apps Testing Sales office Table of Contents Abstract... 3 Mobile Test Automation... 3 Challenges & Pains... 4 EZ TestApp Concept and Elements... 5 About TenKod Ltd.... 8

More information

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development Introduction Today s developers are under constant pressure to launch killer apps and release enhancements as

More information

Remote Desktop Access Through Android Mobile Phones and Reverse

Remote Desktop Access Through Android Mobile Phones and Reverse Reviewed Paper Volume 2 Issue 8 April 2015 Paper International Journal of Informative & Futuristic Research ISSN (Online): 2347-1697 Remote Desktop Access Through Android Mobile Phones and Reverse Paper

More information

Sybase Unwired Platform 2.1.x

Sybase Unwired Platform 2.1.x white paper Sybase Unwired Platform 2.1.x Development Paradigm www.sybase.com Table of Contents 1 Sybase Unwired Platform 2 Mobile Application Development 3 Mobile Business Object (MBO) Development 5 Mobile

More information

"Selecting Mobile Application Automation Tools"

Selecting Mobile Application Automation Tools T23 Class 10/6/2011 3:00 PM "Selecting Mobile Application Automation Tools" Presented by: Pradeep Kumar Govindasamy Cognizant Technology Solutions Brought to you by: 340 Corporate Way, Suite 300, Orange

More information

Ce document a été téléchargé depuis le site de Precilog. - Services de test SOA, - Intégration de solutions de test.

Ce document a été téléchargé depuis le site de Precilog. - Services de test SOA, - Intégration de solutions de test. Ce document a été téléchargé depuis le site de Precilog. - Services de test SOA, - Intégration de solutions de test. 01 39 20 13 55 info@precilog.com www.precilog.com End to End Process Testing & Validation:

More information

Chapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system.

Chapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system. Chapter 1 Introduction to ios Development Objectives: Touch on the history of ios and the devices that support this operating system. Understand the different types of Apple Developer accounts. Introduce

More information

How To Use Titanium Studio

How To Use Titanium Studio Crossplatform Programming Lecture 3 Introduction to Titanium http://dsg.ce.unipr.it/ http://dsg.ce.unipr.it/?q=node/37 alessandro.grazioli81@gmail.com 2015 Parma Outline Introduction Installation and Configuration

More information

Mobile Testing, Agile Methodologies & You!

Mobile Testing, Agile Methodologies & You! & Mobile Testing, Agile Methodologies & You! Before We Begin... It's Quiet in Here Q&A at End of Webinar Contact Details Available Let s Go! Today s Presenters Alan Trefzger XBOSoft William Anderson Go2Group

More information

Automated Performance Testing of Desktop Applications

Automated Performance Testing of Desktop Applications By Ostap Elyashevskyy Automated Performance Testing of Desktop Applications Introduction For the most part, performance testing is associated with Web applications. This area is more or less covered by

More information

NetSupport Manager v11

NetSupport Manager v11 Remote Support For Any Environment NetSupport Manager v11 NetSupport Manager has been helping organizations optimize the delivery of their IT support services since 1989 and while the use of Remote Control

More information

Sybase Unwired Platform 2.0

Sybase Unwired Platform 2.0 white paper Sybase Unwired Platform 2.0 Development Paradigm www.sybase.com TABLE OF CONTENTS 1 Sybase Unwired Platform 1 Mobile Application Development 2 Mobile Business Object (MBO) Development 4 Mobile

More information

An Easier Way for Cross-Platform Data Acquisition Application Development

An Easier Way for Cross-Platform Data Acquisition Application Development An Easier Way for Cross-Platform Data Acquisition Application Development For industrial automation and measurement system developers, software technology continues making rapid progress. Software engineers

More information

D37.2 - Test Strategy

D37.2 - Test Strategy D37.2 - Test Strategy Client Testbed Document Identification Date 16/05/2013 Status Final Version 1.0 Related SP / WP Related Deliverable(s) Lead Participant Contributors SP3 / WP37 Document Reference

More information

DESIGN AND IMPLEMENTATION OF A FILE SHARING APPLICATION FOR ANDROID

DESIGN AND IMPLEMENTATION OF A FILE SHARING APPLICATION FOR ANDROID DESIGN AND IMPLEMENTATION OF A FILE SHARING APPLICATION FOR ANDROID 1 Alatishe A.A, 2 Adegbola M.A, 3 Dike U. Ike 1,2,3 Department of Electrical and Information Engineering, Covenant University, Ota Ogun

More information

Localization Testing in Mobile World Software Testing Conference, 2013

Localization Testing in Mobile World Software Testing Conference, 2013 Localization Testing in Mobile World Software Testing Conference, 2013 In the recent past, there has been tremendous growth of smart phones and tablets. Due to this continuous growth, mobile applications

More information

Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD

Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD Mobile App Testing Process Mobile Application Testing Strategy EMULATOR QA team can perform most of the testing in a well-equipped test environment using device emulators with various options like ability

More information

Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper

Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper WP2 Subject: with the CRYPTO-BOX Version: Smarx OS PPK 5.90 and higher 0-15Apr014ks(WP02_Network).odt Last Update: 28 April 2014 Target Operating Systems: Windows 8/7/Vista (32 & 64 bit), XP, Linux, OS

More information

Evaluation of Load/Stress tools for Web Applications testing

Evaluation of Load/Stress tools for Web Applications testing May 14, 2008 Whitepaper Evaluation of Load/Stress tools for Web Applications testing CONTACT INFORMATION: phone: +1.301.527.1629 fax: +1.301.527.1690 email: whitepaper@hsc.com web: www.hsc.com PROPRIETARY

More information

Best Practices in Automation Testing of Mobile Applications

Best Practices in Automation Testing of Mobile Applications perspective Best Practices in Automation Testing of Mobile Applications Abstract In today s world, the mobile application landscape is growing across all business verticals because of the excellent usability

More information

A Cost Effective GPS-GPRS Based Women Tracking System and Women Safety Application using Android Mobile

A Cost Effective GPS-GPRS Based Women Tracking System and Women Safety Application using Android Mobile A Cost Effective GPS-GPRS Based Women Tracking System and Women Safety Application using Android Mobile Devendra Thorat, Kalpesh Dhumal, Aniket Sadaphule, Vikas Arade B.E Computer Engineering, Navsahyadri

More information

SECTION 4 TESTING & QUALITY CONTROL

SECTION 4 TESTING & QUALITY CONTROL Page 1 SECTION 4 TESTING & QUALITY CONTROL TESTING METHODOLOGY & THE TESTING LIFECYCLE The stages of the Testing Life Cycle are: Requirements Analysis, Planning, Test Case Development, Test Environment

More information

Chapter 1 - Web Server Management and Cluster Topology

Chapter 1 - Web Server Management and Cluster Topology Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management

More information

10 Best Practices for Application Performance Testing

10 Best Practices for Application Performance Testing Business white paper 10 Best Practices for Application Performance Testing Leveraging Agile Performance Testing for Web and Mobile Applications 10 Best Practices for Application Performance Testing Table

More information

5 Ways to Improve the Quality and Efficiency of your Mobile Testing

5 Ways to Improve the Quality and Efficiency of your Mobile Testing 5 Ways to Improve the Quality and Efficiency of your Mobile Testing Dennis Schultz, IBM Solution Architect Rational Emerging Technologies Team dennis.schultz@us.ibm.com dennisschultz.wordpress.com 20 February

More information

Quality assurance for mobile applications Case studies for GUI test automation. Alexandra Schladebeck

Quality assurance for mobile applications Case studies for GUI test automation. Alexandra Schladebeck Quality assurance for mobile applications Case studies for GUI test automation Alexandra Schladebeck Bredex GmbH Version 2.5 Agenda The history The new questions The candidates Our experiences Results

More information

Mobile Test Automation - Right Tools and Right Approach

Mobile Test Automation - Right Tools and Right Approach Mobile Test Automation - Right Tools and Right Approach With business interfaces moving on to the Mobile space, enterprises are leveraging innovative apps that not only connect their customers but also

More information

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date> Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) Outline Smartphones Developing Mobile Applications Android ios BlackBerry Windows Mobile References Cell phones

More information

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development Android Development Lecture AD 0 Android SDK & Development Environment 2013/2014 Parma Università degli Studi di Parma Lecture Summary Android Module Overview The Android Platform Android Environment Setup

More information

www.wipro.com Mobile Testing Preparing for a fast-changing mobile world. Sudheer M, Practice Head - Mobility Testing and Automation

www.wipro.com Mobile Testing Preparing for a fast-changing mobile world. Sudheer M, Practice Head - Mobility Testing and Automation www.wipro.com Mobile Testing Preparing for a fast-changing mobile world. Sudheer M, Practice Head - Mobility Testing and Automation Table of Contents 03----------------------------------------------------Introduction

More information

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise

More information

Approach for the automated testing of design requirements on different versions of mobile devices

Approach for the automated testing of design requirements on different versions of mobile devices University of Bremen Faculty 3 Mathematics and Computer Science Master Program of Digital Media Volkswagen Group AppFactory Master Thesis Approach for the automated testing of design requirements on different

More information

Test Run Analysis Interpretation (AI) Made Easy with OpenLoad

Test Run Analysis Interpretation (AI) Made Easy with OpenLoad Test Run Analysis Interpretation (AI) Made Easy with OpenLoad OpenDemand Systems, Inc. Abstract / Executive Summary As Web applications and services become more complex, it becomes increasingly difficult

More information

White Paper Bridging the Essential Gap between Continuous Quality and Crowd Based Testing

White Paper Bridging the Essential Gap between Continuous Quality and Crowd Based Testing White Paper Bridging the Essential Gap between Continuous Quality and Crowd Based Testing 1 Contents Introduction... 3 Testing Lifecycle... 4 Testing typologies... 4 Functional Testing... 4 Manual vs.

More information

Whitepaper Performance Testing and Monitoring of Mobile Applications

Whitepaper Performance Testing and Monitoring of Mobile Applications M eux Test Whitepaper Performance Testing and Monitoring of Mobile Applications Abstract The testing of a mobile application does not stop when the application passes all functional tests. Testing the

More information

Testing & Assuring Mobile End User Experience Before Production. Neotys

Testing & Assuring Mobile End User Experience Before Production. Neotys Testing & Assuring Mobile End User Experience Before Production Neotys Agenda Introduction The challenges Best practices NeoLoad mobile capabilities Mobile devices are used more and more At Home In 2014,

More information

Modeling the Mobile Application Development Lifecycle

Modeling the Mobile Application Development Lifecycle , March 12-14, 2014, Hong Kong Modeling the Mobile Application Development Lifecycle Tejas Vithani, Member, IAENG and Anand Kumar Abstract Software Development Lifecycle is crucial in Desktop or web application

More information

Aspera Mobile An Open Platform for Rapid Content Acquisition and Delivery WHITE PAPER

Aspera Mobile An Open Platform for Rapid Content Acquisition and Delivery WHITE PAPER WHITE PAPER TABLE OF CONTENTS Overview 3 Transitioning to Mobile Upload 3 - an Open Platform for Rapid Upload/Download 3 Rapid Individual and Concurrent Upload/Download Speed 4 Predictable Control of Mobile

More information

How To Test For Performance

How To Test For Performance : Roles, Activities, and QA Inclusion Michael Lawler NueVista Group 1 Today s Agenda Outline the components of a performance test and considerations Discuss various roles, tasks, and activities Review

More information

How To Test For Elulla

How To Test For Elulla EQUELLA Whitepaper Performance Testing Carl Hoffmann Senior Technical Consultant Contents 1 EQUELLA Performance Testing 3 1.1 Introduction 3 1.2 Overview of performance testing 3 2 Why do performance testing?

More information

MarathonITE. GUI Testing for Java/Swing Applications

MarathonITE. GUI Testing for Java/Swing Applications MarathonITE GUI Testing for Java/Swing Applications Overview Test automation is not a sprint... it is a marathon Test Automation As the applications in today s environment grow more complex, the testing

More information

Introduction to BlackBerry Development using Java ME. Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion )

Introduction to BlackBerry Development using Java ME. Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion ) Introduction to BlackBerry Development using Java ME Presented by: Sean Fenton Technical Channel Manager RIM (Research in Motion ) 2 Introduction to BlackBerry MDS BlackBerry Mobile Data System (BlackBerry

More information

The Process Guidelines should be used in conjunction with the standard OUM process guidelines when using Testing and Quality Management Tools.

The Process Guidelines should be used in conjunction with the standard OUM process guidelines when using Testing and Quality Management Tools. OUM 6.3 Testing and Quality Management Tools Supplemental Guide Method Navigation Current Page Navigation TESTING AND QUALITY MANAGEMENT TOOLS SUPPLEMENTAL GUIDE This document contains OUM supplemental

More information

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip Load testing with WAPT: Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. A brief insight is provided

More information

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application DATABASES AND INFORMATION SYSTEMS H.-M. Haav, A. Kalja and T. Robal (Eds.) Proc. of the 11th International Baltic Conference, Baltic DB&IS 2014 TUT Press, 2014 215 Issues of Hybrid Mobile Application Development

More information