Referring you to a recent post i wrote about mobile functional testing – key considerations
Referring you all to a recent blog on the interesting insights around iOS adoption
Mobile technologies are much more than a trend, and are no longer something that organizations and enterprises can overlook or pretend to ignore.
Mobile is already a significant market platform that generates substantial revenues, driven by the ever-growing use of smartphones and mobile applications. However, alongside these exciting business opportunities, mobile technologies and applications also introduce new types of risks that were not an issue in the desktop application world.
As mobile grows, the accompanying pains and risks require (even dictate) the adoption of a robust mobile strategy built upon a centralized organizational solution. Such a strategic solution should be based on an appropriate set of tools that can be used by management, development and testing teams wherever they may be located around the globe.
Mobile applications require enterprises to take into account several mobile-specific components that are not relevant to the desktop space:
- Governance and availability of devices (smartphones and tablets). The extremely dynamic and fragmented mobile market requires continuous testing of mobile products. To ensure timely delivery to market, you must have access to an up-to-date set of mobile devices at all times.
- Global solution which enables offshoring, testing and collaboration among diverse and distributed teams
- Robust manual testing solution to handle user interface and other “look & feel” issues
- Cross-device test automation solution in order to accelerate TTM and to enable QA to efficiently perform continuous regression testing while moving from one version of the product to the next
- The ability to plug a dedicated, mobile-specific testing platform into your existing ALM tools, processes and organizational skill sets (i.e., seamlessly integrate with existing ALM quality suites)
- Mobile Application Performance & Monitoring (APM) must be taken into account. Availability and response time for your mobile application are critical for business success. Studies show that mobile users are less tolerant than desktop users to performance and availability shortcomings.
When formulating your mobile strategy, do not take the risk of overlooking these important aspects of mobile testing. In addition, the latest World Quality Report (as illustrated above) stresses the importance of using a cloud-based, centralized organizational resource to enhance agility, competitiveness and cost-effectiveness.
Using this blueprint, Perfecto Mobile has deployed mobile testing solutions for leading enterprises and mobile carriers worldwide. Our experience shows that addressing these key pillars assures ongoing mobile quality while cost-effectively streamlining the entire mobile lifecycle for the various mobility groups (Development, Testing, Performance and Operations).
So here’s the takeaway:
Mobile is a serious business platform which is getting more complex and fragmented every day. New devices will continue to pop up and new mobile OS versions will be released with increasing frequency, making mobile testing that much more difficult.
To thrive in such an environment, enterprises ought to focus their time, energy and resources on developing high quality mobile products that serve their customers’ needs. Integrating the right mobile solution with your existing tools and processes will allow your team to focus on developing real mobile testing scenarios, automation, etc., rather than dealing with organizational issues. By supporting the pillars listed above, your mobile testing solution can serve as a central strategic resource across the enterprise IT environment.
I wanted to share with you a fresh announcement from Perfecto Mobile.
Today Perfecto Mobile announced its new technology solution aimed for iOS mobile testing.
This solution enables full-featured remote iOS iPhone and iPad testing in the cloud that is 100% transparent to the device under test with no device rooting (jailbreaking).
With this enhanced and complete solution Perfecto is now able to support any iOS device or version in the MobileCloud(TM) without having to jailbreak the device.
The MobileCloud users can remotely work on any iPhone or iPad, running any iOS version, operating in various carrier networks around the world.
The solution uses a complete non-jailbreak approach with the following benefits:
- Full device control over native application, web based services and pre-installed iOS applications as well as full springboard control via the cloud with digital video support
- Remote manual and automated testing, as well as real-device monitoring
- Fast time-to-market for iOS apps and services with maximum quality and device coverage
Figure 1: Perfecto’s new iOS testing solution for native applications using OCR
For the full press release, please refer to this URL (LINK)
iOS changed the mobility game, no doubt about it. It paved the way for the ‘mobile era’ by offering amazing functionality with a simple user experience. However when it comes to testing and monitoring, working with the iPhone/iPad mobile application can be anything but simple…
As the iOS app market continues to produce record growth, challenges and complexities surrounding iOS application testing also continue to interfere with development. A key challenge of iOS testing is that, unlike the open-source Android OS, Apple iOS is a closed operating system. Added complexity during the development and testing stages arises with a closed system, since users can’t extract necessary data from low level objects, which are essential for test automation. So, what’s the best approach for getting the necessary level of access to the iOS device – rooting (jailbreaking) or compile-time source instrumentation? Should you base your testing on native objects or OCR-based screen analysis?
Let’s take a deeper look into some of these challenges and why a cloud-based hybrid approach is important to offer developers and testers the necessary coverage, capabilities and flexibility to deliver better iOS apps and deploy them with confidence.
Rooting (jailbreaking) vs. Source Instrumentation (compile-time)
There are two common methods used today in the mobile testing industry to address this challenge (i.e. access to the low level objects): rooting (jailbreaking) and source instrumentation (i.e. compile-time solution).
Jailbreaking refers to the process of removing the limitations placed by Apple on the iOS device in order to get low level (root) access to the operating system. This allows the tester to be able to recognize the objects within the application being tested.
Source Instrumentation is performed by compiling the application being tested with an additional piece of code that provides access (“back door”) to the low level OS for object recognition. This code enables the tester to execute the low level calls and get the Object ID’s from the operating systems (without the need to root/jailbreak the device).
The decision as what approach to adopt strongly depends on several considerations (below are just few):
1) The used SDLC process
2) Corporate policies
3) Application under test
4) Frequency of testing
Perfecto Mobile provides its end users with the freedom to choose what fits them best, while taking into consideration the advantages and disadvantages of each approach. When customers need to quickly test either a new iOS version or a new iOS device, the jailbreaking approach is less suitable. In such a case, the compile-time method is preferable – even though it complicates the SDLC by introducing additional code to the application being tested.
On the other hand, using a jailbroken device lets you test the application with the exact code by which it will be released (compile-time mandates that before store submission, you will remove the “back-door” or be exposed to serious security issues). This eliminates the need for compilation and intrusive operations which could potentially pose a risk to quality. Companies using a compile-time approach should also consider possible regulations (such as HIPAA) which enforce testing on the final binary (and not on debug version, test friendly version, etc.)
The combined (hybrid) approach lets you choose which type of tests to implement on which iOS device according to the nature of your application, project needs, and policy. When the test devices are deployed and securely managed in a “private cloud” (such as that offered by Perfecto Mobile), such a configuration guarantees that the jailbreak method does not introduce any risks or abuse of the platform for non-testing purposes. The jailbroken device is used only for testing purposes in a closed and secure testing environment. This is analogous to the use the way iOS devices used for development have a “developer signature,” as well as the way Android devices used for development have more levels of access than those required during the normal ALM cycle.
The Need for a Hybrid Approach to Object Recognition
Testing a mobile application requires strong object recognition capabilities. The use of visual analysis might not be sufficient, for example, the OCR technology can detect UI issues and glitches on the test devices, but cannot ensure 100% accuracy due to its heuristic nature. On the other hand, low level objects might “miss” the obvious qualification that a visual analysis can easily detect. That’s why a hybrid approach incorporating both visual and Native object analysis is imperative for covering all mobile business cases. Such an approach is supported by Perfecto Mobile.
Object level analysis vs. Visual analysis
This screenshot above shows the differences of using an object level analysis as opposed to visual analysis (object level analysis would not have detected the overlapping of the button on the text).
The Perfecto Mobile Approach: Go Cloud, Go Hybrid
Perfecto Mobile’s experience as a market leader has taught us that the best approach is to present each customer with all possible alternatives making them available inside the cloud.
Real devices + emulators (in the cloud), OCR screen analysis + OS level native objects (in the cloud), rooted/jailbroken device + non-rooted/jailbroken devices (in the cloud)
With hundreds of thousands of automation hours running every month on our platform, we are well-positioned to suggest and guide, but not to “judge” what’s best for everyone…
Perfecto Mobile hybrid object support on a rooted android and a non-jailbroken iPhone
Redirecting to 2 new posts i’ve made on PerfectoMobile blog:
Check out the post on PerfectoMobile blog:
My posts and others around mobile testing, trends, tools, cloud testing, Mobile ALM solution and more
Please go ahead and influence or share your opinion on the most important feature in a mobile testing solution
If none of the options matches your view, feel free to comment and add a different feature
In this short post, i will shortly give a taste about Jamo Solution – Mobile test automation solution
As you know, the mobile market is growing rapidly and so are the solutions.
We described in earlier blogs some of the players in the mobile automation and cloud, and one of them is JAMO
Jamo provides unique mobile automation to the various mobile platforms on a non jail break or rooted handsets (Android, iOS, Windows and BlackBerry). The solution is based on plug in which is installed on the leading IDE’s (eclipse, QTP, Visual Studio) which communicates with a Jamo device manager component on the PC, and a small agent which is running on the target device and allows the real objects recognition per platform. The add on allows to record/replay and get the GUI objects from each target device (real object) to be used on your automated script. The solution is secured per each customer. For governance, near army institute, banking and secured applications this is the solution of choice according to the company spokesman.
The solution was well proved and used with customers, and is being deployed globally by various partner and integrators which works with Jamo which is located in Belgium & Switzerland
For more information you may contact the representatives, and get the trials/demos and more