Avinash Tiwari | Posted on | 2 min Read

The cloud-based on-demand plug and play ‘app certification platform’saves cost by nearly 50%.

A mobile solution provider, based out of Noida was faced with numerous challenges, such as, lack of- adequate device coverage and devices management, test apps in continuous integration mode, efficiency of mobile app testers, device sharing between teams, access of devices to geographically distributed devices, among others.
Keeping the organisation’s large scale of business in mind, pCloudy developed the most appropriate single platform hybrid solution to address all the above pain-points. This ‘Hybrid’ Lab included the conversion of the existing physical device to an on-premise mobile lab over cloud, thus enabling teams to access the devices from anywhere, anytime enabling them to schedule and book devices easily. Teams at the mobile solutions company could now schedule automated runs in a continuous integrated mode and also during regression tests.

In addition, pCloudy provided a single interface access to its public cloud for the Client’s team. Teams could now switch between public and on-premise clouds seamlessly, depending on the specific requirement, besides being able to access various devices during their release tests, thus finding a single-click platform for all the challenges it was faced with earlier.
Thus, pCloudy, the flagship product of Smart Software Testing Solutions Inc. in addition to business growth, brought about significant benefits to the mobile solution provider, much to the latter’s delight, including,
· 30% increase in productivity of teams
· 44% reduction in Test Cycle
· 25% increase in test coverage and reduction in production benefits

Another start-up Planet Gogo, in the mobile news space, funded by HT media recently, launched their Mobile App. To ensure success of their App, they wanted to test on variety of Low and medium budget smartphones. Moreover, they wanted to reproduce issues reported by their beta users. These issues were device specific where in pCloudy provided them the appropriate one-stop solution.

How the journey began?
Pankaj Goel, a technology Consultant who formerly worked at Oracle India, HCL Technologies and Adobe Systems along with Lalit Jain, also a consultant with experience in having worked with Wipro and Adobe Systems, co-founded CresTech Software Systems in 2006. The Company grew rapidly to become a trusted name in Independent QA and Testing space. Today it has 3 delivery centers at Noida, Bangalore and California and is a trusted partner of many Fortune 500 companies helping them accomplish their software quality management goals successfully.

Around 2009-10 the founding team conceptualized a ‘Commercial of the Shelf Solution’ called OpKey with Tool Agnostic Test Automation Platform. Very soon, this became a preferred ‘tool of choice’ for many customers, across the globe, who were looking to kick-start their Automation initiatives. In 2014,the three dreamers or the ‘tech nerds’ as they proudly call themselves – Lalit Jain (The Customer’s Voice), Pankaj Goel (The Open-eyed Dreamer) along with Avinash Tiwari (The Pragmatic Dreamer) decided to start another venture, with separate investment for OpKey and closed funding recently.

This new venture, Smart Software Testing Solutions Inc., was formed with the vision to create product and platforms for testing of Apps in a connected world. In line with their vision, they acquired, pCloudy Design Labs, a Bangalore based start-up that focused on Cloud Technology for a Mobile device. Today, pCloudy has been transformed as a Mobile App Testing platform and a separate entity in itself.
pCloudy is India’s first-of-its kind, plug and play app testing platform serving e-commerce, Mobile App based businesses, Mobile App Development companies, besides large enterprises. Besides serving the Indian market, its geographical expansion plans include catering to Australia, Philippines, Singapore, Malaysia, Thailand and Indonesia.

Jenkins Plugins

  • Deliver quality mobile apps continuously by automating the process of build integration using pCloudy Plugin for Jenkins
  • Test your mobile apps by setting automatic triggers to run your automation test scripts unattended on our real devices.
  • Use our easy and inexpensive solution to test your mobile apps on as many devices and environments as you need.

Download the plugin

http://pcloudy-content-distribution.s3.amazonaws.com/index.html?prefix=IDE%20Plugins/Jenkins/

 

Why use the pCloudy plugin with Jenkins?

 

Fast Feedback — Every time someone pushes new code into the source repository, it is crucial to ensure that the integrity of the software is maintained. The plug-in enables you to receive immediate feedback and to help you understand which changes when introduced, made either the compile/build cycle or the tests to fail, and how to revert it.

 

Streamlines and saves time – Spend less time on build integration and more time on app development. Much of the work of frequent integrations is handled by automated build and testing systems, meaning developer time isn’t wasted on large-scale error-ridden integrations. On the other hand, when app developers need to test their apps on a number of mobile devices, a cloud platform like pCloudy helps you to easily select, manage, or schedule real devices for app testing. It drastically reduces the amount of time spent on device management activities like maintenance of the devices and controlling the version of OS on the devices; and not just that, it also provides an access to a host of iOS and Android devices to install and test your app on.

 

Continuously and consistently improve app quality – Using Jenkins allows you to receive immediate feedback from automated testing whenever a new code is pushed. Further, by automating the testing on a range of real devices helps you to improve the quality of the app. With this integration of Jenkins and pCloudy, any bugs can be instantly detected and resolved, keeping the app software in a state where it can be safely released at any time.

 

Speedy Development — Automated build integration and automated tests running on Real devices can be triggered anytime, this enables decreased wait time and results in faster development and deployment. Additionally, integration costs are reduced as serious integration issues are less likely.

Using continuous integration tools like Jenkins with a mobile device cloud platform like pCloudy is a powerful combination that definitely unlocks faster, better and economical means of testing and releasing quality apps.

 

 

Installing the Plugin:

 

An Overview:

pCloudy has released a plugin for Jenkins which provides you access to the platform for performing automation testing of mobile apps from within Jenkins on real devices.

 

Prerequisites:

  1. An account in pCloudy with enough credits.
  2. An API Access key for authentication with pCloudy.com
  3. Chrome Browser on local machine
  4. Jenkins installed on local machine
  5. Download Jenkins pCloudy plugin

Preparation:

How to install the plugin:

 Launch Jenkins in a Web Browser -> Navigate to Manage Jenkins

 

Jenkins Plugins

 

Navigate to Manage Plugins

 

Jenkins Plugins

 


Navigate to Advanced Tab

 

Mobile App Testing Tool

 


Scroll down to Upload Plugin -> Click Choose File -> Browse for pCloudyJenkinsPlugin.hpi

 

Jenkins Plugins

 

Click on Upload, and wait for the pCloudy plugin to be installed.

 

 

How to run automation test execution from Jenkins using pCloudy’s mobile device Cloud?

 

Step 1: Launch Jenkins in a Web Browser

 

Step 2: Select New Item

 

Jenkins Automation Tool

 

Enter a Name for a project, select Project Type and Click OK

 

Jenkins Testing Tool

 

Navigate to Build -> Add build step -> select Execute Test Suite on pCloudy

 

Jenkins Automated Testing

 

Execute Test Suite on pCloudy will open a form

 

In Step 1, enter Authentication details for pCloudy

 

Jenkins Automation Tool

 

In Step 2, enter Execution details

 

Jenkins Automation Tool

 

a) CLI Path is a path where the test scripts are located. It can be in exe or jar format.

 

  i.  CLI Path for exe “C:\xyz.exe %USERNAME% %CLOUDURL%”

 

  ii.  CLI Path for jar “java -jar C:\xyz.jar %USERNAME% %CLOUDURL%”

 

Eg:

 

java -jar C:/Users/user/Desktop/pCloudy/Jenkins/TestMunk-Automation.jar %CLOUDURL% %USERNAME% %APIKEY% %APPPATH% %DURATION% %DEVICES%

 

b) App Path is the location of the .apk or .ipa file

 

c) Duration is the total time required to execute the entire test script

 

In Step 3, Select Devices

 

Jenkins Automated Testing

 

Finally, once configuration is complete click Save or Apply

 

Running Automation Execution

 

The Build can be triggered automatically to start a build as soon as a change is made, or can be manually triggered by clicking Build Now

 

Viewing Console Output

 

Select the Project you are working on

 

Jenkins Testing Tool

 

Select a Build from the Build History

 

Jenkins Automation Tool

 

Select Console Output

 

Jenkins Automated Testing

 

Jenkins Testing Tool

 

View the Reports

 

The complete execution reports can be viewed in the HTML format

 

Scroll down to the end of a Build’s Console Output

 

Jenkins Plugins

 

The complete execution report will be available in the path provided in the Console Output

Introduction to iOS TestFlight

TestFlight is an online service used to distribute and test beta iOS applications. Developers can use Test Flight to evade the Apple’s bitter binding procedure for testing new versions of their apps. It provides over-the-air installation, testing, tracking and managing of Beta apps. In simple words, TestFlight acts as a link between the developer, the tester, and the Apple Developer Center.

How is it useful?

  • Distribution of the app over-the- air to Testers
  • Tracking and managing testing using TestFlight’s dashboard
  • Receiving feedback from testers to improve the app
  • To obtain reports about the device models, OS version used while testing the App
  • Automatically records any crashes the testers encounter and sends it to the Developer

This tutorial will walk you through integrating TestFlight into your own apps.

What do you need to start?

You have to have your certificates, app ID, and provisioning profiles in place before distributing your apps using Test Flight. Here’s the list of items you need:

  • A Developer ID to login to your developer account.
  • A Certificate for Distribution to export builds and distribute apps
  • An App ID
  • A Device UDID
  • Ad Hoc Provisioning Profile to distribute your app on testers devices
  • Sign your app with a valid ad hoc provisioning profile

These items will help you obtain an .ipa file that can be distributed for testing in iOS devices with UDIDs mentioned in the provisioning profile of the app.

Uploading your app for Beta Testing

Open up your project in Xcode, make sure you have a correct Bundle Identifier and that you’ve chosen the correct Distribution Certificate:

Choose Product\Archive from the top toolbar:

Once Xcode finishes archiving your project, click the shiny blue Submit to App Store… button:

Choose your development team

Hit Submit

Wait for your build to upload. Once done you will receive a “Submission Successful message”

Inviting Testers

Espresso with pCloudy

 
Now, run your Espresso Scripts on hundreds of Mobile devices and build quality apps faster than ever.

Several Mobile Automation Frameworks like Robotium, Calabash, Appium , KIF & uiautomator have been developed in recent years. Among a few popular ones, Espresso is one of them.

You probably know, Espresso is a testing framework for Android apps. It is predominantly used by developers and testers for testing user interactions (UI) to ensure that users do not encounter crashes or unexpected results while using an app.

There are several benefits of using Espresso, the primary ones are:

  • It automatically synchronises test actions with the UI of the app being tested. Meaning? To improve the reliability of tests, it detects when the main thread is idle and runs the test commands at the appropriate time.
  • This capability also relieves you from having to add any timing workarounds, such as a sleep period in your test code.
  • Espresso has an API that is small, easy to learn and built on top of the Android instrumentation framework.
  • It also supports testing activities outside the app like camera, browser and dialer etc which Appium does not support.

However, when you have limited time and money it is a challenge to take full advantage of your Espresso scripts in improving the quality of your apps. Luckily, there are ways to overcome this.

Conventionally, you would spend a huge amount of money to purchase several Android devices, and spend endless hours running your scripts independently on each device. Today, thankfully you don’t have to do this anymore, there is good news. With the help of a cloud-based testing platform like pCloudy.com, you can run your scripts on hundreds on real mobile devices in parallel.

Yes, using pCloudy.com you can test your apps on any device of your choice and pay a just minimum price for the time you’ve used the device. You can not only save money, but you can also save your time by running your test scripts on multiple devices in parallel and get a detailed execution report.
 

Here’s how you can use Espresso on pCloudy devices:

Calabash Automation Testing

Improve the quality of your iOS and Android apps by running your Calabash Test Scripts (Calabash Automation Testing) against real phones and tablets on pCloudy.com.

Along with Appium, Robotium and Espresso, you can use Calabash as well on pCloudy.com.

Calabash is a free open source framework for mobile automation testing. It is cross platform, supporting both iOS and Android. It consists of two libraries – calabash android and calabash iOS, which helps in writing tests in domain specific languages. Calabash consists of libraries that enable the test code to interact with apps. Each of these interactions consists of a number of end user actions like gestures, assertions or screenshots. The Tests can be written in simple, self-explanatory language that can be easily followed by even non-technical people.

Further, to increase the efficiency of testing and to improve the quality of your iOS and Android Apps and you can automate your Calabash Test Scripts against a wide range of real mobile devices on pCloudy.com.

Here’s how you can use Calabash on pCloudy devices:

Avinash Tiwari | Posted on | 2 min Read

Test Apps on Real Devices

 
Using Eclipse or Android Studio to code your app? Now with just a few simple mouse clicks test apps directly and in parallel on multiple real mobile devices.

Eclipse and Android Studio are two popular IDEs for mobile app development. The reason behind their popularity is, these are open source tools and have a great community of developers whom you can turn to for any support. Anyway, if you are one of those mobile app developers using these popular IDEs then there’s good news for you!

What if you could extend the capability of your IDEs to improve the quality of your apps? What if you could test your app on hundreds of mobile devices right from your IDE? What if you could with the help of simple plugins take your mobile app development process to a whole new level?

Well, you can – with a simple yet salient solution from pCloudy.com. With a cloud based device lab, pCloudy is contributing to the cause of redefining mobile app testing by providing remarkably useful platform and plugins to test your apps on real mobile devices. As mentioned in our previous articles, it is not enough if mobile apps are tested on Emulators alone. We need to ensure that the apps are tested on Real Devices as well. It is also important to test your mobile apps on different devices based on a carefully analysed device matrix to hit maximum downloads. To continuously develop, integrate and release mobile apps in your DevOps environment such solutions are crucial.
 

Here’s how can our plugins benefit you

 

Description:

Our Plugins act as a wizard that allows you to:

  • extend the ability of Eclipse to use real devices over a cloud platform
  • select and install an app from a Cloud Drive or from local
  • select multiple real devices from a cloud (Public, Private, On-premise) to test your app
  • run test scripts in parallel on multiple devices
  • perform Automation or Manual Testing

How does it work?

If you have already created Test Scripts ready for Test execution, then all you need to do is to select some real devices over the cloud platform and run the execution to test your app. To help you out with this, the Plugin generates a pseudo-code that can simply be copied into your existing test scripts using Android Studio or Eclipse. With simple changes in the test script, the app will get installed and test execution is performed on the selected mobile devices. In the end, a detailed automation report will also be generated through our platform.
 

With these plugins app developers and testers can:

  • choose from hundreds of mobile devices to test your App
  • effortlessly test their apps directly on real mobile devices
  • can view or perform an activity on mobile screen from directly within on your IDE
  • perform automation runs in parallel on multiple mobile devices

Download and install the plugin:

pBot

 

The future of app testing in IoT lies in integrating app interaction with external hardware triggers. While devices such as phones, tablets and wearables may already seem ubiquitous, a networked array of entrenched systems and sensors commonly called the Internet of Things, could eventually race past all of them in its worldwide reach and number of applications and services.

Connectivity through the IoT is reliant on many different wireless standards. For example, to do anything at all, an IoT-enabled device might have to interface with Wi-Fi, Bluetooth, amongst others channels. For software makers, these potential issues with connectivity and infrastructure will inevitably shape the design of their applications.

Speaking of wireless connectivity technologies, NFC applications can now be tested with pCloudy’s new testing solution- pBot. Before explaining pBot, let’s talk about what Near Field Communication is all about.

NFC is a set of short-range wireless connectivity technologies that are perfect for transmitting small amounts of data with minimal setup time and power consumption. NFC applications include contactless transactions, data exchange and simplified setup of more complex technologies. NFC-enabled devices typically support three operating modes which are Reader/Writer, Peer to Peer and Card Emulation. This fuels contactless payments, exchange of business cards or digital pictures.

As the number of available NFC-enabled mobile phones and tablets increases, the market will see a growth in applications such as mobile payments, ticketing, smart posters, as well as access control, data sharing and additional services.

 

 

pCloudy’s pBot has made NFC testing flawless with its advanced functionalities. For instance, NFC tagged visiting card. The card data i.e., the contact information is being read by an app on mobile device. Here, pCloudy mobile app interface integrates robotic actions which triggers the robot to perform NFC action.
 

Smart Payment Terminal Testing with pCloudy pBot 

With pBot, smart payments are now made realistic through testing payment terminal for EMV certification. For instance, when a credit card swipe device needs to be tested with real credit cards, the pCloudy mobile app interface integrates robotic actions which triggers the robot to action on payment terminal.

Thus, app testing with pCloudy’s pBot is now made futuristic with distinctive robotic functions. App testing should include IoT specific test strategies, support SDLC under context, and have access to on-demand test teams with requisite specializations. Success depends on the ability to influence a dedicated infrastructure, cloud capabilities and a wide array of test tools.

As enterprises leverage smart systems that ‘sense’ the environment and execute programmed actions, IoT driven testing is crucial to strengthen IT initiatives with security, intelligence and flexibility.

 

Calabash Automation Execution for Mobile Apps

 

pCloudy provides automation execution environment to run your Calabash test script of android and iOS and hybrid applications as well.

Here are steps to run Calabash test script over android device:

  • Login over www.pcloudy.com with your registered Email ID & Password
  • Go to the Automator Page
  • Select Android or iOS OS version & Manufacturer
  • Select and add desired device
  • Choose Calabash (to run Calabash test scripts)
  • Select Application .apk/.ipa file (the App to be tested)
  • Select Test Script zip file (the Test Script developed for testing)
  • Enter Single Device execution Time (Time required for the entire script to be executed on single device)
  • Enter Name of your Test Cycle (this name will represent your Test Cycle)
  • Click on Schedule Test Cycle

Calabash

Click on Schedule to confirm schedule of test automation. Here, you can see your selected application, test script, device(s) etc.

calabash-confirm-test-cycle

You get a pop up message of test automation schedule confirmation.

Click on OK to proceed.

calabash-test-cycle-scheduling-successful

Go to your mailbox and open pCloudy Automation Alert mail.

Click on the given link “Click to view Report”.

calabash-simplest-online-device-cloud

Here, you can see result of your Calabash Automation Execution. This directory contains all important information of execution result.

calabash-cloud-automator-report

Trends of 2016

 
2015 saw a great revolution in the mobile app testing industry with many new breakthroughs being achieved. The year witnessed an emphasis on modern mobile applications being compatible with various devices. However, modern mobile apps also need to deliver personalized and flawless user experience. This year there will be a huge advancement in the mobile application testing space with latest versions of mobile operating systems and rapid technological transformations. We list the top seven mobile app testing trends for this year.

 

Rise of cloud based App certification platforms

Mobile Device Clouds have become an integral part of Mobile App Dev cycle for many organizations. These services help developers and testers by providing access to a wide range of smartphones and tablets. This trends will pick up further this year with many new players entering this space. These services are becoming available at a very affordable price for customers.

We see a new trend where these device cloud platforms will transition to full fledged certification platforms.  Customers can get their Apps tested on multiple devices on parameters like behavior, performance, security etc. in completely automated way. All this using single click.

 

Agile and continuous delivery

Mobile Apps are becoming backbone of business for many organizations. In fact, trend of App only businesses are increasing rapidly. In such situations traditional models of development are a complete misfit. Delivery cycles are shorter and you can’t wait long to fix a customer feedback.

Agile Dev cycles, continuous delivery and deployments are becoming key to success of any Mobile App strategy. We see an increase in this trend this year as well.

Role of Test Automation

Continuing on earlier point, Agile Dev cycles, continuous delivery and deployments are the new necessities for success of Mobile Apps.

The only way to succeed with above approach is to automate as much as possible. We see a rise in trend where organizations are effectively defining their tests pyramids. As the pyramids suggests maximum automation should happen at Unit tests level followed by API level tests. Scope of monkey and UI tests are driven by stability of App UI.

Pyramid

 

Growth of Open Source

We have seen rise of open source tools in last couple of years. Test Automation tools like Selenium and Appium are giving commercials tools a run for their Money. As the maturity and community support for open source tools are increasing, more and more organizations are adopting open source tools.opensourceImproved Focus on Security

The requirement for comprehensive security and penetration testing is set to increase exponentially in 2016. People store sensitive data on their mobile phones like bank details, credit card details and other personal data which can be easily used for carrying out financial thefts. Thus, testers need to focus on renewed security by implementing comprehensive security.

 

Internet of Things

With convergence of cloud and IOT, we see a rise in consumer IOT Applications.

These applications require testing solution that go beyond traditional methodologies and integrate Software validation with smart hardware triggers and touch of Human Experience.

Recently, lot of interesting developments like Google launching project Brillo – which is based on Android – Gives us hope that industry will move towards standardization and this will provide a big boost to development of IOT validation systems.

 

IOT_1

 

 

Compatibility Of Your App

 
We have recently done a series of tests to help you find the compatibility of your app on various Android devices

  It’s not an obvious matter of fact that there would be a particular device that suits your app. Especially, when there are end number of mobile manufacturers are foraying into the Indian market lately. However, careful selection of devices can ensure wide coverage.

‘’Mobile phone manufacturing in the country may reach 500 million units in coming two years’’

 The success of your app depends on the compatibility of your app on various devices and platforms. Before you launch your App in the market, it’s extremely important to ensure that Apps runs on a wide range of devices your customers will possibly be using. Considering the number and variety of devices available in the market, it’s not possible to test the App on all the devices. However, careful selection of devices can ensure wide coverage.

In this context, we have done a through research to help you select the right device for testing. We have analyzed a wide range of data from the public domain, industry reports and our platform generated data to create this report for you.

Below are some key findings,

 

  1. Top Android versions in Indian Market

Jellybean (versions 4.1 to 4.3) is the most widely used Android versions (~50%) among Indian Smartphone users. A close second is kitKat(4.4) (~42%). Looking at the growth trend, soon it would acquire the no. 1 spot.3rd is Ice cream Sandwich (4.0) (~ 4%)

 

Top Android versions in Indian Market

2.Market share of Manufacturers in Indian Market

Market share of Manufacturers in Indian MarketNo one can beat the popularity of Samsung when it comes to Android phones, followed by the Indian manufacturers Micromax because of their low-cost phones. There are other companies like Intex and Lava who competes against each other in the same space. With most of the Chinese giants joining the race, this is going to be interesting

3.Top Android devices in Indian market (usage wise)

 We have been tracking device usage data on our platform since last year. Moreover, based on the feedbacks from various customers, we are able to give you the following data.

Clients Login Creds.xlsx Google Sheets