linkedin iOS Archives - pCloudy

Challenges in Mobile App Testing

Suyash Dubey
By Suyash Dubey
March 28, 2019
8 min Read
Share This Article
Challenges in Mobile App Testing

Quick Links:



Today, there are many smartphone users in the world and so is the popularity of mobile apps. In order to be competent enough, mobile apps have to be unique and should provide the best user experience to increase the user base. With the users getting more informed and intelligent, the apps built should keep up with the pace. In order to be impeccable, the mobile app should undergo a rigorous testing process and during that process, the testing team faces many challenges as discussed below.

Challenges in Mobile App Testing

Different Operating Systems and their versions

There are different types of operating systems available in the market such as iOS, Android, Windows etc. Also, these OS have different versions too. So, it becomes challenging to test so many versions of the mobile app in a shorter period of time. One app that works well in one type of OS may not work well in the other. It is very important to test the application with all supported platforms and their version because we don’t know where the user is going to install the application. As per research, iOS users upgrade quickly as compared to Android but in Android the device fragmentation is larger. That means the developers have to support older versions and APIs and testers also have to test accordingly.

2019-03-27 (1)

Device Variations: Based on Screen size

Android comes with a mix of features and variations in pixels densities and ratios which varies in each screen size. Even in the case of Apple, the screen new size was introduced with the launch of the iPhone 6. Now, it is not just about being picture perfect screen design rather designing an adaptive screen design. Well with such a variety in screen sizes, the role of the tester becomes serious as they need to check if all the features are working well in different screens and pixel and aspect ratios are maintained well.

devices-screen-sizes

Based on the number of Devices

The picture below shows the number of devices in the market by different brands. The number of device manufacturers has increased. According to OpenSignal, there are around 1294 distinct Android phone manufacturers alone, imagine if we add up other brands. The pace with which this data is increasing is a bit alarming for the testers as the testers have to check the app performances on different devices, they would probably need a device library to do the same. The challenge remains in context to functionalities like Complex user interactions on touch screen and keypad devices as well. Having a device library is certainly is a costly affair unless emulation is adopted which can simulate multiple device types and testing can run easily on it.

OpenSignal-Brand-Fragmentation

Image Source: venturebeat.com

Various Networks

The QA team also faces challenges when it has to test the devices connected to different networks. Generally, there are 2G, 3G,4G mobile data available. These provide different data transfer speed and transmission. These varying speeds of the networks by various providers remain a challenge for the testers even today. In this case, testers have to check that the app must perform well at different network speeds and connectivity quality and a check on bandwidth usage of the app. This remains a challenge as it is partially controllable based on different network providers and connectivity access in different geographies.

Frequent OS releases

Mobile Operating Systems keeps changing. Both Android and iOS have more than 10 versions of their operating systems. They keep enhancing and updating their versions for better performance and user experiences. This frequent OS release comes as a testing challenge as the testers needs to validate the complete application with each of new OS release. It is very important to test the application with the latest OS release otherwise the app performance would be a major issue and consequently loss of users using the app.

screen-shot-2018-07-12-at-1.35.22-pm

Script Execution

Another major challenge of mobile testing is what we call scripting, the method of defining a test. Script execution can either be manual or automated. You can write down the scripts in a document, which is then used by a test engineer who manually interacts with the test environment to determine the result, else you can run automated scripts that in turn drive interaction with the device and app, and record the results.

Automated scripting needs to be kept away from the device to be of any real use because there are so many different devices with different interface options. A script that follows strict keystrokes on an Apple iPhone would not have any chance of working on a Samsung device, because the UI is different. Fortunately, most real device automated testing software provides high-level scripting that operates on the text, image, or object layer. Device emulators can automate testexecution using a higher-level, abstracted scripting language that is not device dependent. When you use automated scripting, the cost of setting up the script will typically be higher than the cost of a single manual execution of a test. But if it is a test script that you run on a periodic basis, every time that you subsequently run the script, the more time and effort you will save. You will eventually recover the cost of initial scripting If you run the script enough.

So to conclude, to build a better user experience, an app tester needs to work had in overcoming the challenges of testing. By adopting some analytical skills and methods, testers can really cope up with these situations. For eg. Testing only those apps and OS which are mostly used by their user segment, by adopting a strong testing strategy to take situational decisions eg. Decisions regarding when to choose Automation and manual testing. Strategically, the challenges can be overcome.

Screen Size

The Android world is not simple. The variety of different aspect ratios and pixel densities can be overwhelming. With the launch of iPhone Xs Max which has a screen size of 6.5 inches, Apple brings new screen sizes to the iOS world as well. Though iOS developers are used to pixel perfect screen design, they now need to change their mindset to the adaptive screen design instead. For testing, it means that we need to check on various devices that all the necessary screen elements are accessible with different screen sizes and aspect ratios. There are many phones with a screen size of 5 inches which are still popular in 2019.

2019-03-28

Security Issues

Traditional testing tools like selenium and QTP weren’t designed with cross-platform in mind. Automation tools for web apps and mobile apps are different.Operating systems especially Android further adds to the complexity with API level fragmentation. The most common automation testing tools for mobile app automation testing are Appium and calabash. Each tool has it’s own advantages and disadvantages and you need to choose on the basis for your app’s functioning.

Weak Hosting Controls is one of the most common issues. The server on which your app is hosted should have security measures to prevent unauthorized users Weak Encryptions can lead to data theft which will impact the trust factor of the users. Most of the mobile apps require user data such as email ID, password, age, location etc. This data should be encrypted and stored with proper security. Hackers often use this kind of data to get money out of users account online. Encryption will make it difficult for anyone unauthorized to intrude and retrieve that data rather than keeping it in plain text.

Power consumption and battery life

We haven’t seen much innovations in the mobile battery but the mobile usage and specifications are increasing rapidly. People are using more apps nowadays and the apps are more complex than ever. This is why testers need to test the apps power consumption because if the apps use lots of CPU cycles and some apps will also run in the background than the battery will drain out quickly. We need to make sure that the app uses less battery power so that users can use it for a longer period of time.

2019-03-27

Conclusion

Mobile apps are evolving with device technology and user expectations. Developers are emphasizing on reducing the app size and battery usage. Testers play a major role to ensure that the app works smoothly and does not crash or have bugs. This is why testers must be aware of the latest trends in mobile app testing to deal with the mobile app testing challenges.

In the next blog, We will talk about Different types of mobile app testing.



whitepaper


Related Articles:

  • Key Challenges in Testing Mobile Applications
  • Mobile App Testing Strategies
  • 6 Most Common Problems in Mobile App Testing
  • 5 Best Practices App Testing Companies Must Follow for Success
  • Cross Platform Mobile Test Automation Using Appium
  • Suyash Dubey
    Suyash Dubey

    Suyash is a content strategist at pCloudy. He is a frequent contributor to the world's leading mobile technology blogs and tech forums. In his spare time, you will find him reading detective novels, watching a documentary or exploring a new destination.

    Related Articles

    April 28, 2020
    Test Local And Internal Servers Before Deployment Using Wildnet

    Some testing teams set up their own staging environment to test internal servers but as there is no public access which makes it difficult to perform local testing on remote devices. So how would you test your app which can…

    Learn More Arrow

    April 19, 2020
    What’s New In pCloudy 5.6?

    pCloudy is committed to delivering the best solutions in mobile app testing and therefore we come up with product updates at regular intervals. This time we are thrilled to announce the release of pCloudy 5.6 with exciting new features to…

    Learn More Arrow

    March 17, 2020
    Ensure Continuous Productivity By Leveraging Remote Devices For Mobile App Testing

    Remote working is going to be a new normal and remote access tools and platforms will play a key role in maintaining productivity. Working from home has many advantages both for enterprises and teams. There are many tools that help…

    Learn More Arrow

    pCloudy 5.1 - July Release Update and Full Speed Ahead in the Third Quarter

    shivani
    By shivani
    July 27, 2018
    4 min Read
    Share This Article
    pCloudy 5.1 - July Release Update and Full Speed Ahead in the Third Quarter

    pCloudy 5.1

    At each step of our journey, we aim to make your app testing robust and simpler. That’s why your feedback and requests are so important for us. We tried to incorporate them into a release structure again that makes pCloudy work better and faster for you.

    So here, we bring to you the fresh set of release updates that have been addressed and deployed in pCloudy 5.1.

    • Simpler Appium Integration Architecture: Here comes the bonanza for our Appium users! We have released a newer and simpler Appium integration architecture to simplify your Appium test execution on Android and iOS devices with pCloudy. The newer architecture make developers’ life simpler with lesser changes in the code. The older architecture demanded using APIs and also changes in your code that required some level of expertise. We addressed this issue and have come up with a simpler architecture where you need to mention some desired capabilities instead of calling APIs or doing changes in the code to run the Appium scripts. And wonder what! it just takes few minutes to integrate your existing Appium scripts with pcloudy. Check yourself here.
    • pCloudy Appium Capabilities

      DesiredCapabilities capabilities = new DesiredCapabilities();
      capabilities.setCapability(“pCloudy_Username”, “Enter your email Id”);
      capabilities.setCapability(“pCloudy_ApiKey”, “Enter your API Key”);
      capabilities.setCapability(“pCloudy_ApplicationName”, “pCloudyAppiumDemo.apk”);
      capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
      capabilities.setCapability(“pCloudy_DeviceFullName”, “Samsung_GalaxyTabA_Android_7.1.1”);
      driver = new AndroidDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    • Cross-browser testing made simpler: There are many widely used web browsers, but not all browsers, and versions of those browsers, work the same. A website may not look or function identically on each one, which can lead to lost revenue for an enterprise. We addressed the issue of choosing from the fixed set of browsers previously available.

      Heeding to the growing demands of our users, we have introduced the Launch and Upload browser feature for our Android users which will give him the freedom to choose the version of the browser that he wants to use. This is going to save their testing time and efforts to a great extent and also give better results for their cross browser test. To know more about it Click Here.

    Upload Browser

    • Faster Upload of Apps: We received multiple requests to speed up the process of Upload and synchronization of App/Data into the cloud. With some changes in the process, we have now succeeded to reduce the app upload and synchronization time by 42%.

      As you know, during app synchronization, the platform automatically synchronizes your data with all the 4 data centers of pCloudy. Earlier, the process was done in a series where synchronization once completed in one data center will then start in the 2nd one and so on which took a few minutes to complete. We have now changed this to a parallel process, which makes your testing 2x faster.

    App time saved in pCloudy 5.1
    App upload time saved in pCloudy 5.1

    • TouchID for iOS devices no more a blocker: Apple introduced the ability to perform authentication via TouchID to enable secure and effortless access to the device. But it turns out to be a hindrance for mobility teams while testing their iOS apps on devices over cloud. To ease out the process of authenticating TouchID manually every time, you can now bypass the TouchID verification in your apps using our utility. The bypass TouchID feature will be available for iOS devices version 10.0.0 or above. To know more about it Click Here.

    Touch ID

    Note: This feature will for now be available only for iOS and won’t support Face ID.

    • Integration with Slack: Since many of our customers are moving towards Slack, there was a huge demand to integrate Slack with pCloudy to enable their broadly distributed teams collaborate well. We noticed this change and hence we integrated Slack with pCloudy. It will now be easier for you to share bug related data and artifacts like Logs, screenshots etc through our Slack integration. To know more about it Click Here.

    Collaborate

    Share to Slack

    shivani
    shivani

    She is a Product Marketer with over 9 years of diversified experience across content, branding, and product marketing. Her experience ranges from global brands to nimble startups. She is a custodian of Brand & Content, telling stories about the brand that delights customers and provides compelling business value.

    Related Articles

    September 12, 2019
    How To Install Appium On A Mac Machine

    [xyz-ihs snippet="quickLinks-Appium"]   In the last blog in this series we learned how to start the Appium server and launch app from the code. In this blog we will understand how to setup Appium on a Mac machine.   Pre-requisite…

    Learn More Arrow

    July 17, 2019
    Appium Setup for Windows

    [xyz-ihs snippet="quickLinks-Appium"]   In the previous blog, we informed about the basics of Appium and its architecture. Now let's understand how to setup Appium. There are four steps required to setup Appium, they are enabling the Android device for test,…

    Learn More Arrow

    March 28, 2019
    Challenges in Mobile App Testing

    [xyz-ihs snippet="quickLinks-mobile-app-testing"]   Today, there are many smartphone users in the world and so is the popularity of mobile apps. In order to be competent enough, mobile apps have to be unique and should provide the best user experience to…

    Learn More Arrow

    Release 4.0

    Avinash
    By Avinash
    November 25, 2016
    2 min Read
    Share This Article
    Release 4.0

    Device Location Testing

    Multi-location device access

    Continuing with our endeavor to provide you a better experience, we are excited to announce our next big step.

    Now, you will be able to access Mobile devices and Mobile networks from across different geographies. In the first phase, we are providing devices and mobile network from India, US and Philippines. We will add more locations very soon.

    You can continue to use your existing credentials with the URL device.pcloudy.com to access all the devices from different locations.

    Here are some of  the changes you will notice –

    Device Location filter in the Devices Tab

    You can now select devices from different locations using the Device Location filter.

    • In the Instant Access page

    Device Location Testing

    • In the Book your Device page

    Cloud Access

    Device Location filter in the My App/Data Tab

    NOTE: The My App/Data folder is specific to a device location. If you plan to use devices from different locations, make sure your app is uploaded in all Device locations.

    My App/Data

    Device Location filter in the Reports Tab

    NOTE: The Storage folder is specific to a device location. If you’ve used devices from different locations, please select the corresponding location to view it’s reports.

    Reports

    Device Location filter in the Settings page

    • History section

    Settings

    • Test Runs section

    Settings

    • UDID

    Settings

    You also see a few changes once you access a device

    • Device Information
    • Device Information

    • Installing an app

    NOTE: Since My App/Data is specific to a device location, ensure that the installation file is uploaded to the respective location of the device.Install

    Avinash
    Avinash

    Avinash Tiwari is a thought leader, a recognized keynote speaker, and the co-founder of pCloudy.com. He has 15+ experience in Product development and Testing. He brings with him a passion for emerging technology and quick adoption, both of which have solidified his reputation as a leader in the mobile app testing field.

    Related Articles

    April 19, 2020
    What’s New In pCloudy 5.6?

    pCloudy is committed to delivering the best solutions in mobile app testing and therefore we come up with product updates at regular intervals. This time we are thrilled to announce the release of pCloudy 5.6 with exciting new features to…

    Learn More Arrow

    April 9, 2019
    7 Types Of Mobile App Testing

    [xyz-ihs snippet="quickLinks-mobile-app-testing"] Types of Testing Since there are many players in the mobile app market, the competition is endless. To beat the heat and to keep providing an enhanced mobile app experience to the users, the app needs to be…

    Learn More Arrow

    April 5, 2019
    Run Espresso in pCloudy Using Gradle

    Do you know why Google has selected Gradle as the build system for Android Studio? Many Android developers work in a heterogeneous environment with different technology stacks. Gradle solves some of the hardest problems faced by the developers like how…

    Learn More Arrow

    New Devices Added Recently on Our Platform

    Avinash
    By Avinash
    October 19, 2016
    1 min Read
    Share This Article
    New Devices Added Recently on Our Platform

    Latest Devices

    htc-828
    HTC 828
    htc-desire-10-lifestyle
    HTC Desire 10 Life Style
    htc-desire-820s
    HTC Desire 820S
    htc-desire-825
    HTC Desire 825
    htc-one-x9
    HTC One X9
    itel-it-1512
    ITEL IT 1512
    lava-x81
    Lava X81
    lenovo-vibe-p1-turbo
    Lenovo Vibe P1 Turbo
    micromax-canvas-6
    Micromax Canvas 6
    micromax-canvas-fire-4g
    Micromax Canvas Fire 4G
    bleu-wi-208-8gb-black
    Bleu WI 208
    blu-studio-one-s0110ee
    Blu Studio One S0110EE
    coolpad-note-3
    Coolpad Note 3
    panasonic-eluga-icon-slate
    Panasonic Eluga Icon Slate
    phicomm-c630
    Phicomm C630
    samsung-galaxy-j2
    Samsung Galaxy J2
    Avinash
    Avinash

    Avinash Tiwari is a thought leader, a recognized keynote speaker, and the co-founder of pCloudy.com. He has 15+ experience in Product development and Testing. He brings with him a passion for emerging technology and quick adoption, both of which have solidified his reputation as a leader in the mobile app testing field.

    Related Articles

    March 28, 2019
    Challenges in Mobile App Testing

    [xyz-ihs snippet="quickLinks-mobile-app-testing"]   Today, there are many smartphone users in the world and so is the popularity of mobile apps. In order to be competent enough, mobile apps have to be unique and should provide the best user experience to…

    Learn More Arrow

    September 4, 2018
    New Devices Added Recently on Our Platform

    New Devices Added Recently     Start using now

    Learn More Arrow

    July 27, 2018
    pCloudy 5.1 - July Release Update and Full Speed Ahead in the Third Quarter

    pCloudy 5.1 At each step of our journey, we aim to make your app testing robust and simpler. That's why your feedback and requests are so important for us. We tried to incorporate them into a release structure again that…

    Learn More Arrow

    Release 3.4 is here!!

    Avinash
    By Avinash
    August 29, 2016
    2 min Read
    Share This Article
    Release 3.4 is here!!

    PCloudy 3.4

    PCloudy is happy to announce several exciting features as part of it’s latest release.

    • ADB Bridge (for In-premise cloud): Connect and take full control of any Android device using Android Debug Bridge. It provides access to a versatile command line tool that lets you communicate with a remotely connected device over the cloud.
    • ADB Commands (Available as part of Enterprise package): You can run ADB commands from your computer to the remotely connected device on a Private Cloud Lab.
    • Network Simulation (for In-premise cloud): Control the network connected to the device on which you will test your application. Set Network Profiles, modify existing profiles and apply it to the network connected to the device.
    • Battery Consumption Reports (For Android devices above 5.0): The platform now displays real time battery consumption data of device and App under testing. You can view a graphical representation of battery consumed by your apps with the total battery used by the device.
    • Monkey Tool (UI/Application Exerciser Monkey): Perform Stress and crash test on your application by simply selecting a device and running monkey tool on your application. The tool sends out a stream of pseudo-random user events such as clicks, touches, or gestures, as well as a number of system-level events, which acts as a stress test on the application software you are testing.
    • New implementation of iOS Instruments: Several improvements for running Appium and Calabash scripts on iOS devices
    • Volume Up & Down buttons for Android: Separate keys to control Volume of the devices. This is just the beginning, there’s something bigger coming.
    • Wifi control button for Android: Separate keys to Switch-on/Switch off wifi settings on Android devices
    • Support for IOS 10 beta : Get your App ready for Testing for upcoming IOS 10 release. You can test on iPhone and iPad with IOS 10 Beta version.
    • Several Bug fixes

    We would be happy to send you more information. Please contact us on info@pcloudy.com

    Avinash
    Avinash

    Avinash Tiwari is a thought leader, a recognized keynote speaker, and the co-founder of pCloudy.com. He has 15+ experience in Product development and Testing. He brings with him a passion for emerging technology and quick adoption, both of which have solidified his reputation as a leader in the mobile app testing field.

    Related Articles

    April 19, 2020
    What’s New In pCloudy 5.6?

    pCloudy is committed to delivering the best solutions in mobile app testing and therefore we come up with product updates at regular intervals. This time we are thrilled to announce the release of pCloudy 5.6 with exciting new features to…

    Learn More Arrow

    September 12, 2019
    How To Install Appium On A Mac Machine

    [xyz-ihs snippet="quickLinks-Appium"]   In the last blog in this series we learned how to start the Appium server and launch app from the code. In this blog we will understand how to setup Appium on a Mac machine.   Pre-requisite…

    Learn More Arrow

    July 17, 2019
    Appium Setup for Windows

    [xyz-ihs snippet="quickLinks-Appium"]   In the previous blog, we informed about the basics of Appium and its architecture. Now let's understand how to setup Appium. There are four steps required to setup Appium, they are enabling the Android device for test,…

    Learn More Arrow

    Experience pCloudy Today

    Tickmark No Credit Card Required
    Tickmark Exceptional Security

    Copyright All Rights Reserved © 2020