Category Page

pCloudy Platform

 
This article explains the options available on device page. These options will help you use the devices effectively on pCloudy platform. pCloudy is a feature rich platform and supports whole lot of features to ease your device interaction. There are many single click options to speed up your testing on devices. On connecting to a device, You will see many icons in the top pane.

Lets understand what each of these icons/features does for you.

 

Device icons

 

1.
Camera

Capture high resolution screen shots with the skin of the device

2.
landscape and portrait devices

Change the orientation of the device to Landscape and portrait

3.
Cross Browser Testing

Open the browser from the list of preinstalled browsers

4.
Keyboard

Use the extended keyboard if you want to enter some text on the device. However, for Android ver 5.0 and above you can directly enter the text from your system keyboard

5.
Battery

Check the stack trace (crash logs) if the application is crashed

6.
Cursor
Navigate the application with the buttons
7.
zoom in zoom out

Zoom in/out the device shown on the screen

8.
zoom default icon
Reset the zoom level to bring the device to default size
9.
re-connect to a device

Click to Re-connect if the device shows black screen

10.
Extend Device Session

Extend the session if the device is available

11.
Wake Up

Wake up the device from sleep mode or push the device to sleep mode

12.
Stop Device Session
Release the device back to the cloud

 

pCloudy’s Device Settings tab has lot of commonly used features and device interactions. Some of the key features to test are Network, Location and Audio.

Lets see those in details.

 

mobile device settings

1.
Reboot Device
Reboot the device remotely
2.
Toggle Wifi

Switch ON/OFF wifi

3.
Adjust Volume
Adjust the device volume
4.
Manage Apps

Manage your apps on the device

5.
Network Profile

Throttle network to simulate different network conditions

6.
add google account
Add Google account
7.
Set Phone Location

Teleport the device – Set any location of the earth on the device

8.
Settings

Open Device settings on the device

9.
Open play store on mobile device

Open play store on the device

10.
open developer options on website

Open developer options on the device

11.
Inject Audio

Send audio commands to the device for testing applications which supports audio commands

 

 

 

Explore Full Power of pCloudy

pCloudy understands that businesses need their apps to be rolled out faster than before, without bugs, crashes, functionality issues, UI glitches, memory drainage and well, everything wrong with every app you uninstalled on your phone within minutes of using them.

 

We simplify testing. More importantly, this platform will equip, enable and guide you to provide single-click access solutions to the battling issues that can easily drive a developer nuts. This platform allows you to test real Android and IOS devices directly from your browser using real Mobile Devices to click-and-perform Manual and Automated Testing for maximum coverage.

 

Here are the most frequently used App Testing Use Cases you might be interested in.

Manual App Testing

Automated Testing

Responsive Testing of Mobile Web

Next Gen Mobile App Testing

Continuous Integration

Integrate your own Tools

How Does Facebook Test its Apps?

 
Using REAL mobile devices.

You must be like “Noooo…, really?” with a sarcastic look on your face.

Well, Facebook using real devices for testing is actually not surprising at all. But, what is really surprising is that there are several mobile app development companies who still do NOT use real devices for testing. Isn’t it enough to test mobile applications on simulators or emulators? Definitely No! If it were, then Facebook would not have invested on its expansive state-of-the-art Mobile Device Lab in Prineville, OR.

Facebook’s journey to the data centre started off with their first setup – The Sled model. The Sled model had drawbacks like inconsistent Wi-Fi connectivity which led them to build the second version named – The Gondola. The Gondola had a lot of issues with tangled USB Cables so they built – The Slatwall. The Slatwall took up an entire room, and we were able to deploy 240 devices, but to accommodate 2,000 phones they need to scale to nine of these rooms, this wouldn’t work. So they decided to move the mobile device lab into a data centre in Oregon.

Currently, the lab in Oregon hosts 60 custom-built racks, each of which holds 32 devices. Four Linux-based OCP Leopard servers are used to test Android apps, while eight Mac Minis are used for iOS apps. Each OCP Leopard server is connected to eight Android devices, and each Mac Mini is connected to four iPhones. Almost 2,000 devices can be run simultaneously for testing new iOS and Android versions of Facebook, Instagram, Messenger and Whatsapp. Each rack also has its own Wi-Fi signal and an EMI enclosure to keep the Wi-Fi local to its rack, according to a post by Facebook developer Antoine Reversat. This not just ensures that Facebook apps functions properly on new and old devices, but also in various network conditions.
 

Why does Facebook require a Mobile Device Lab?

Facebook has a growing 1.6 billion users worldwide. There are tens of thousands of different mobile devices in the market, and Facebook wants its apps to run seamlessly on all of them. Taking into account the variation in hardware, mobile operating system, aspect ratios, and network condition of these mobile devices is an increasingly complex operation.

Additionally, the developers at Facebook make thousands of code changes every week on each mobile platform. This means they also need to be aware of the performance implications of a code change on both high-end and typical devices, as well as on a variety of operating systems. “Given the code intricacies of the Facebook app, we could inadvertently introduce regressions that take up more data, memory or battery usage”, writes Reversat in a blog post. It is crucial to ensure new versions of Facebook’s apps don’t crash or run into performance problems when engineers make updates.

The Rack based Mobile Device Lab is a system built to maintain and improve the development speed while minimising the number of regressions in dimensions of performance, such as speed, data usage, battery consumption, and memory footprint. “In practice, performance issues can be detected in either a lab environment or the real world. Both environments have pros and cons. In the lab, it is difficult to build a controlled environment to reasonably mimic the real world, so catching most perf issues and predicting perf wins before they make it out into the wild is harder. Data that’s gathered in the real world is truer than data gathered in the lab, but the signals can be very noisy. This can make it more difficult to fix a problem or more difficult to figure out the root cause of an issue. It is also less desirable because it requires data collection from user devices. We have worked hard on building tools for lab environments with a belief that such a system can catch most issues, if not all of them, and provide a significant benefit.” writes Zheng Mi, an Engineering Manager at Facebook

The lab is also integrated with configuration management tool named “Chef”, developed by Facebook to deal with the management of hundreds of thousands of servers is used to monitor and maintain a consistent device state during the tests.

The lab also houses the social network’s one of the most ambitious artificial intelligence projects: the Big Sur. It is Facebook’s most advanced Open Rack-compatible hardware specifically designed for AI computing at large scale. Leveraging NVIDIA’s Tesla Accelerated Computing Platform, Big Sur is twice as fast as its previous generation, which means you can train twice as fast and explore networks twice as large.

When Facebook can assemble its own fleet of devices for testing purposes, why can’t you? Want to own a mobile device lab like Facebook’s? pCloudy can help you.

Plugin for Android Studio

 

An Overview

pCloudy has released a plugin for Android Studio which provides you access to the platform for performing manual and automation testing of mobile apps from within Android Studio IDE.

For Manual Testing

Now you can build and upload your Android Apps to pCloudy devices directly from your Android Studio project workspace.

For Automation Testing

If you are using Appium as automation tool and have created your Automation scripts as a project in Android Studio, you can run the scripts directly on pCloudy 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. Android Studio IDE
5. Android Studio pCloudy plugin

Preparation

Reference the JAR files to Eclipse
Make a note the API Username and API Access Key

How to Install the Plugin

1. Download the Android Studio plugin for pCloudy
2. Open your Android Studio > go to Setting icon of Android Studio > Select Plugins > All available plugins are shown which can be filtered with the help of Show feature as per requirement.
3. Click on Install plugin from disk > Browse and select location of your downloaded Android Studio plugin of pCloudy
4. Click on OK
5. Now, you can see that pCloudy plugin has been successfully integrated to Android Studio.

Select pcloudy plugin and click on OK to proceed. Here, we are going to install pCloudy plugin for Android Studio from local disk. Click on Install plugin from disk
install-plugin-from-disk

pCloudy plugin for Android Studio has been integrated successfully.

pcloudy-plugin-over-android-studio

Click on pCloudy plugin icon shown on Android Studio. pCloudy Login page opens. Enter your Username and Access Key and click on Login. Your login credentials are verified. Click on OK to proceed.
pcloudy-plugin-over-android-studio

Note: This is one-time task. Credentials will be valid until you logout.
Now, you are ready to use the Android Studio Plugin for pCloudy.
Manual Functional Testing of App

After successful login, upload your app screen appears. Workspace page helps you to select application path of your local machine.
successfully-authenticated

Cloud Drive page lets you to select app from the list and click on Next to proceed.
upload-your-app

Local Drive lets you to upload your app from your local machine to perform testing.
upload-a-project-file

Mobile Browser enables you to use mobile browser for testing.
use-mobile-browser-for-testing

After selecting app, the next step is choosing a device. Select and Connect to devices page provides you list of devices which can be filtered by using filter parameters (Android/iOS, Manufacturer, and OS version). Select duration of your testing. The device will get booked for selected time duration.

When you click on Next, you get a message “Please wait while we open the pCloudy Platform on your default browser for Manual Testing. Please advised that…”
select-and-connect-to-devices

Just after few seconds, you will be redirected to the connected device page over pCloudy to perform manual functional testing of your app on selected device.
briefing

Automation Testing of App

Similarly, the first step towards performing automation testing is selecting an app from workspace/cloud drive/local drive or use mobile browser.
my-application

Select your desired device; select duration of automation testing. You can filter devices displaying devices by using filter options (Android/iOS, Manufacturer, and OS version). Click onNext to proceed.
choose-devices

Note: Here, you can select multiple devices as well.

Finally, you get corresponding pseudo code for performing Automation testing of app. You can copy this pseudo code to clipboard and use it within your Automation script…
paste-the-code-and-proceed

You will need the pCloudy java connector jar file for the above code to work. The pCloudy-java-conector.jar contains the API wrappers, classes & methods to use the pCloudy RestfulAPIs (without knowing how to call rest webservices from java). The gson.jar is a well known, opensource google library. You should add the pCloudy-java-connector.jar in its build path as a reference within your java project containing appium scripts.

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

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.

 

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

 

 

Choose the Right Testing Platform

 
As a mobile app maker, how sure are you about the success of your app? A small failure to recognize bugs can cost you thousands of dollars! A small mistake can turn you into a big failure among the users. Now, the question is, how to choose the best platform for testing.

Every mobile application is created differently from the other and the right platform to test can be the most important reason for your app’s success.

Right Testing Platform for Your App

 

Choosing the right platform among the various competing ones require a set of clear evaluation.

  • The nature of the targeted audience for your app. This will define the device matrix you should be targeting for your App Testing. Does that platform provide right device matrix for your testing needs?
  • Cloud based vs in-house setup – Does you testing process allow Apps to be allowed on outside cloud? Does your App have functionalities which work with in a secured network?
  • Type of Testing required for your App – Whether your current testing is manual or automated? Does your App require non-functional Testing?
  • Reliability and Scalability of the platform- Can it scale with your needs? Can the platform integrate with your existing tools and frameworks?
  • Return on Investment

 

Criterion

Description

Device Fragmentation

Can the platform handle you need of devices?

Availability

How critical for you instant availability of devices. Is you testing planned?

Automation

How much of testing is done using Automated scripts? Does the platform support the Automation tool that you are using or planning to use.

Type of Testing

What all functional features that you need to test? Does your App require non-functional Testing?

Extensibility ( integration with in-house frameworks)

Can the platform integrate with your in-house frameworks ( Automation, Test Management , Bug Management etc..)

DevOps

Can the platform support DevOps? Can it integrate with your build systems/dev IDEs or continuous integration systems.

Security

Can you upload your app on an external cloud? Does you App require interaction with your internal server?
Usage level and Cost

What is the usage pattern of your test and developing team and what is your budget?

 

Market Share: Andriod VS iOS

 

pCloudy provides the necessary tools for convenient, effective and immediate mobile app testing. Our device is based on cloud and it enables continuous development and testing on real devices. Our unique debugging feature recognizes potential errors that will significantly reduce costs and time. Our platform provides single-click access to end numbers of real Android and Ios devices.

To experience the best with your app, we have developed three different types of cloud environments for you.

Public Cloud

With pCloudy’s publicly accessed cloud, you can perform tests directly from your browser. You won’t get confused to choose between manual or automated because both are available in our public cloud environment. We allow our users to test on a comprehensive list of real IOS and Android devices. You can also test your app over various network conditions like 2G, 3G, 4G or Wi-Fi. You can either configure your own browser or choose from our wide range of pre-installed browsers.

Private Cloud

This option is similar to our public cloud environment, except it comes with additional benefits of personalized security and dedicated access. Here, we would provide you a host of devices in our enterprise grade data center and you can choose your own device. If you have a geographically distributed team, then they will have secured devices over a browser. We make sure that your data is safe on our platform, as we allow only authorized team members to access.

On-premise cloud

In this option, we provide you with the necessary hardware and give you the freedom to set up your own secure device lab. You will have complete control of your own on-premise lab.

In addition to have exactly the same features of our public cloud, on-premise model contains supplementary benefits. On-premise cloud gives you the freedom of plug-in with your existing set of devices and provides you access to a geographically distributed team. Manual and automated- both the testing techniques can be used and with a simple plug-in, you can access it from any rack. Also, there is no limit for the number of devices which can be linked!

At the end of the day, the developer has to choose the best platform for his app. But choosing the right one saves so much of hassles.