Category:

iOS 14 Beta Available on pCloudy

June 30th, 2020 by

Since pCloudy is committed to provide to you with the newest the fastest, here is another one. The newly released device Apple iOS 14 Beta is now available on pCloudy for you to test your app.
 
iOS 14 Beta
 

Want to test your Mobile App?

Join pCloudy Platform!

Flutter App Automation Using Appium Flutter Driver

November 4th, 2019 by

Flutter has been creating waves in the app development space since its launch. The reason is simple, it solves the problem of creating two different codebases for a single app to run on Android and iOS devices. Some experts say that Flutter which was launched by Google is to counter React Native which is used by Facebook. Nevertheless, this is a much-needed relief for enterprises as Flutter will help them save a lot of their time and resources. So let’s first understand what is Flutter.

What is Flutter

Flutter is an opensource mobile UI framework that can create Android and iOS apps from a single codebase. The Flutter framework includes the Flutter engine, Dart platform, the Foundation library, and design-specific widgets. Flutter apps are written in Dart programming language and runs on dart virtual machine.

How to Create a Flutter App

Before we start the process of app development it is important to know that there are two types of widgets, stateless and stateful. A stateless widget describes part of the UI by building a structure of other widgets that describe the UI more definitive. Stateful widgets are the widgets that can change their state multiple times and can be redrawn on to the screen any number of times while the app is in action.
 
To create a Flutter app you need to install Flutter SDK and other tools required to support the framework. We will create the app in Intelli J IDE and for that, you need to install two plugins. The first one is Dart and the second plugin is Flutter. You can install the plugins by clicking on File in the menu bar of the IDE and then click on Settings.
 
1

Then you need to create a new project and you will get a basic code layout to start with your app development. In the first line, we have the main method where we will enable the flutter driver extension and there is a run app method with MyApp class instance, to run the app.
 
Flutter stateless

In this sample code, we have used the title as the stateless widget and we have set the title as the key and for the home screen, we are using one more instance which is MyStatefulWidget(). So in this class, we have a small piece of code, where we have set values for elements like appBar, background color, and in the body, we have placed a floating action button for a counter.
 
flutter statefull

After adding the code you can run the program and you will be able to see the changed state of the counter with every click on the action button.
 
Flutter automation

Appium Flutter Driver

Appium Flutter driver is a test automation tool for flutter apps on multiple platforms. It is a part of the Appium mobile test automation tool. But how does the Appium Flutter driver work? It uses webSocket communication to carry WDIO script to instantiate the flutter driver and the request will be sent to the particular application. Then the AUT will send the response to the script through the Appium Flutter driver.

Appium Flutter driver
Appium Flutter driver

You can also build Appium in your machine through the source code. Once you have cloned the source code, run npm install then npm run built and type a command node to start the Appium server. You can download the package from GitHub. The package contains Appium Flutter Driver and Appium Flutter Finder. You can clone the sample project to get the WDIO code.
 
Flutter sample

In the terminal, you can see that to automate flutter application we have used Flutter as an automation name for both Android and iOS apps. You can see that port is 4723 and in the capabilities, we have mentioned osSpecificOps, automation name: ‘Flutter’. We have mentioned the app path at the top with the device name and platform name and we created an object.
 
Flutter Terminal

Appium==OS environment is ‘android’ which will pick all the information and specify in the capabilities and it will pass a post request to the server.
 
Now here we are trying to find the element using CounterTestFinder and a ButtonFinder to click on the button. In the next line, we have created a driver using a remote method.
 
Then we have switched the Native App context to Flutter. You can switch this if you are using the Flutter app. Once the app is launched, we are validating that the counter text finder has value as zero by calling Flutter APIs internally. So here we are using two actions, one is clicking and the other is touch.
 
Flutter code

The button is to be clicked two times and thus we have used strictEqual function. In the last line of code, we are deleting the session.
 
Now to run the test we need to pass the environment variable to connect the device.
 
Flutter demo

Then we will check if our Appium server is running.
 
Flutter Appium

Then once you run the code you will be able to see the actions performed on the device and the counter will change to two.
 
Flutter Appium automation

This is how you can automate your Android and iOS app testing using Appium Flutter driver. Although there are many benefits of using Flutter, there are some limitations as well. The first thing is that you need to learn Dart language to develop and automate the Flutter app.
 
Suppose you need to run automated tests on multiple devices, then you will have to fire multiple commands in the terminal. Appium flutter driver depends on Flutter Driver APIs and as it’s still not matured enough, some actions cannot be performed.

iPhone 11, Pro, Pro Max available on pCloudy

September 23rd, 2019 by

Since pCloudy is committed to providing to you with the newest, the fastest, here is another one. The newly released devices iPhone 11, iPhone 11 Pro and iPhone 11 Pro Max is now available on pCloudy for you to test your app.
 
Apple iPhone 11
 
iPhone 11 Pro
 
IPhone Pro Max
 

Want to test your Mobile App?

Join pCloudy Platform!

 
Related Articles:

  • pCloudy Announces Availability of iOS 11.3 and 11.4 (beta) Devices on Cloud
  • What’s New With iOS 11?
  • pCloudy Announces Availability Of iOS 13 (beta) and iPadOS Devices On Cloud
  • iPhone XS and XS Max Now Available on pCloudy For You to Test Your Apps
  • iOS 13: New Features And Their Impact On The Apps
  • iOS 13: New Features And Their Impact On The Apps

    June 5th, 2019 by

    The fans were waiting for the next iOS release and in the WWDC 2019, iOS 13 beta was launched. With the launch of the new iPhone in September 2019, iOS 13 will deliver a deluge of features to your iPhone to take on the Android Q. At the annual Worldwide Developers Conference in San Jose, some new features and some tweaks were announced in the latest version of the iOS to make the user’s life easier.
     

    What to expect with iOS 13?

     
    The latest version of iOS focuses on speed, user-friendliness, and privacy. So let’s go through the iOS 13 features and then we will try to evaluate the impact of the updates on the apps.
     

    Dark Mode

     
    Dark mode can be very useful as you can adjust it to light gray, dark gray or black which will be implemented on all the supported apps. This will also save the battery life for OLED display. So this is a reader-friendly update and the dark mode can be set to turn on at night automatically.
     
    ios 13 release

    QuickPath Keyboard

     
    This feature is widely used in Android phones and there are some popular apps as well for swipe typing. Now iOS has also come up with the QuickPath keyboard where you can type with a single hand by just swiping through the words. You will also get similar word suggestions while you swipe through the keyboard.
     

    Video and Photos

     
    If you have recorded the new feature in wrong orientation then you need not worry, you can change the orientation post-recording and there are more filters and effects to edit the video. There is a new photos tab which will help you so delete duplicate photos and highlight the best snapshots. Portrait lighting, a tool in the camera app helps you to change the focus of light and change the intensity.
     

    Identity Protection

     
    Sign in with Apple allows you to log into apps with mentioning your email ID which will restrict the third party apps to track the user activities. There is also an option to hide or share your email ID and Apple will create a random email ID for an app that forwards to your original email account which will mask your real identity.
     

    Maps

     
    In the new map, you can explore the city roads, parks, and buildings in a 3D 360° view. Google map does not work smoothly when it comes to saved searches and this is why now you can rely on the improved Apple maps for navigation. There is a probability that the 3D 360-degree experience can also be used as a VR feature in the upcoming iPhones.
     

    Impact on the apps

     
    The iPhone apps are packaged in a new way which makes them 50% smaller and makes updates up to 60% smaller. It also increases the performance as this helps app load twice as fast. Also, there is a slight upgrade in the privacy as now you can allow the apps to use the location just once. Apple will send you warnings about the apps which continue to track you in the background. This means that the apps which use location more often like delivery, transport, e-commerce, etc will have to make changes in their code algorithms to provide a better user experience.
     

    Conclusion

     
    There are many other tweaks like memoji profiles in Apple’s messaging app, new fonts in the mail, a new gallery view for notes and support for shared folders, and adding details in the reminders. So now the question is, which iPhones will get the iOS 13? So to clear things, iPhone 6s or later can get the new iOS 13 update. There are speculations that more updates will be announced with the upcoming phone launch. But these new updates were necessary as Android is already leading with some of these features in Android Q.

     
    Related Articles:

  • pCloudy Announces Availability Of iOS 13 (beta) and iPadOS Devices On Cloud
  • pCloudy Announces Availability of iOS 12 Devices on Cloud
  • iOS 12 is Now Available on pCloudy. Go Forth and Test Your Apps Now!
  • pCloudy Announces Availability of iOS 11.3 and 11.4 (beta) Devices on Cloud
  • Android and iOS: Basics and Comparison
  • Android and iOS: Basics and Comparison

    February 21st, 2019 by

    [xyz-ihs snippet=”quickLinks-mobile-app-testing”]

    The second blog in the series “Start to end guide for mobile app testing”

     

    Basics and Comparison

    In the previous blog in this series, we talked about the evolution of mobile technology. In this blog, you will know more about the two most popular mobile operating systems, Android and iOS. Here you can also learn about the Android architecture, concepts of Android SDK, emulators and iOS architecture and mobile cloud. Let’s start by getting familiar with Android versions.

     

    What is Android?

    Android is a software bunch comprising not just the operating system but also middleware and key applications. It is developed by Google and later by the Open Handset Alliance but it is not limited to only mobiles. In other words, it is a complete set of software required for the development of smart devices such as smartphones, tablets, notebooks, set-top boxes, TVs, smart watches, etc. Android is a Linux based open source software platform. The application development in Android is done in the Java language.

     

    Versions of Android

    The first version of Android was launched on the HTC Dream mobile in the year 2008. Since then Android has been evolving constantly and now it has the largest user base of around 88% global market share. Android OS versions are released with a name following the alphabetical order, such as Android 1.1, 1.5-Cupcake, 1.6-Donut, 2.0/2.1-Eclair,2.2-Froyo,2.3-Gingerbread,3.X-Honeycomb,4.0-Ice Cream Sandwich, 4.1/4.2/4.3-Jelly Bean, 4.4-KitKat, 5.0-Lollipop, 6.0-Marshmallow, 7.0-Nougat, 8.0-Oreo and 9.0- Pie being the latest of all the versions.

     

    Versions of Android

    Why so buzz about Android?

    Whenever we hear the word Android, we usually think about the ‘smart phones’. This is how Android is placed in our minds. It is one of the most successful mobile operating systems in the market today. Android apps are the most downloaded apps in the app stores. It runs on millions of mobile devices in more than 190 countries in the world. Around 1.5 billion apps and games are downloaded from Google play store in a month. It does not fail to impress its users by consistently introducing new features. It is open source, so any android variant can be developed using the source code. It supports wireless communication including 3G, 4G, WiFi, and Bluetooth. Android keeps introducing its new and upgraded versions, often. Due to its popularity, around 1million new Android devices are activated worldwide in a day. Google play is an open marketplace for developers to sell and distribute their mobile apps. It has already entered the field of Artificial Intelligence enabling the apps to be more intuitive and user-friendly.

     

    Android Architecture

    Android is architected in the form of a software stack comprising applications, an operating system, run-time environment, middleware, services, and libraries. The following figure is the visual outline of the elements integrated layer by layer. These all elements are the prerequisites of the mobile app development and to make the app environment ready. Android Architecture is categorized as Linux kernel, native libraries(middleware), Android runtime, Application framework, and applications.
     

    • Linux Kernel- It exists at the root of the Android architecture. It contains all drivers for hardware components, battery and memory management, resource access and device management. Android only uses the Linux Kernel.
    •  

    • Libraries – It is the layer above the Linux Kernel, including native libraries such as WebKit, OpenGL, FreeType, SQLite, Media framework, C runtime library(Libc), etc. Webkit library supports the web browsing engine, SQLite is used for sharing and storing application data, Media to play record audio/video, etc. FreeType is for processing fonts, SSL libraries are for internet security, OpenGL and SGL are responsible for rendering 3D,2D graphics, respectively, the Surface manager is responsible for rendering windows and drawing surfaces of apps on the screen. Libraries also contain C++ libraries used by android system components.
    •  

    • Android Runtime (ART)- these have the core libraries also known as Dalvik Libraries (DVM) which are responsible for running an android application. Android Runtime is built to run apps in a restricted environment where there is limiter power in terms of battery, processing, and memory. ART uses DEX files, a type of byte code designed for Android to manage memory more efficiently.
    •  

    • Android Framework- On the top of Android runtime is Android Framework. It includes a collection of Android APIs written in Java. Enables and simplifies the reuse of core components and services such as Window, view, Activity, telephony, resources, locations, Content Providers (data) and package managers. It provides access to Android feature set fir developers to build a mobile app for Android OS.
    •  

    • Applications- Over the Android Framework lies the application layer covering system and other apps that the users can download from the Google Play Store. The core apps like email, SMS, calendar, maps, browser, contacts, etc are pre-packed in the mobile device. This layer uses all other layers for enhancing the performance of these mobile apps.

     

    Android Architecture

    Source: https://developer.android.com/guide/platform/images/android-stack_2x.png

     

    Concepts of Android SDK and .apk file and emulators

    Android SDK is a Software Development Kit which allows the developers to develop an application for the Android platform. The Android SDK comprises of software programs with the sample source codes, developer tools, documentation, tutorials, an emulator and essential libraries to build, test and debug mobile apps for Android. Apps are written in Java language and are run on Dalvik(DVM) that runs on Linux Kernel.
    APK stands for Android Application Package. It is a package file format used by Android OS for distribution and installation of mobile apps and middleware. For installing any mobile app/games, we require APK files with an extension .apk. These can be downloaded from the play store. Apk files are just like .exe files for windows. Apk file is in zip format and contains all necessary files required for app installation. The Apk archive usually contains META-INF directory:
    MANIFEST.MF: the Manifest file
    CERT.RSA: The certificate of the application.
    CERT.SF
     

    Android Emulators-

    Android emulator or Android Virtual Device (AVD) is a device that is a functional replica of an Android device that can be used to run and test the Android applications on the PC even before they are published in the market for final use. Android emulator comes as part of the Android SDK. It is a virtual device that lets the developer develop the apps without using a physical device. Android emulator requires JRE –Java Runtime Environment and Android SDK to function. The applications can be either downloaded or installed directly on the device from the Google play store or if the application is available in ‘.apk’ format, it can be installed using the “add” command.

     

    iOS and its versions

    iOS is a mobile operating system developed by Apple Inc. It was originated in 2007 for iPhone and later extended its support to other Apple devices like iPad and iPod touch. It is the second most popular mobile device in the world after Android. The iOS mobile apps can be downloaded from Apple’s App Store. The App store contains more than 2 million iOS apps today. The iOS apps are programmed in Objective C, C, and C++ languages. Version updates for iOS are released through iTunes software until the introduction of iOS 5 in 2011. Now, the software updates and data sync can happen wirelessly through Apple iCloud service. iOS has expanded its market by introducing new products powered by Apple like iWatch and AppleTV.
    It was formerly known as iPhone OS and the name was used for its other 3 subsequent versions until 2010 when Apple released iOS4. In 2011, iOS5 was released providing access to around 500000 iOS apps and some additional features. iOS 6, 7, 9 were released in the succeeding years with more advanced features and performance. The latest versions iOS 10,11 and 12 are released in 2017 and 2018 respectively.
     

    iOS Architecture

    iOS Architecture is also a layered one. Each layer is built with a variety of frameworks which can be assimilated in the iOS apps. The layers communicate with the hardware with the help of clearly described system interfaces that make it easy for the developer to build the app that is ready for different devices. Let us discuss each layer below:

    • Core OS- This layer is the foundation layer of the OS on which other layers are dependent. This layer is responsible for managing memory, system and OS tasks, networking and also interacts directly with the hardware. This layer comprises of frameworks like accelerate, external accessory, core Bluetooth, security and local authentication.
       
    • Core Services Layer- It consists of technologies that provide certain services to the app but are not directly related to the UI of the app. It contains high-level features like iCloud storage. The core services include address book framework(provides access to contacts and user database), CloudKit (medium of transferring the data between app and cloud), Core Data (to manage the data model of a model view controller app), Core Foundation( Technologies to provide Data management services to IOS), Core Location(gives location info to apps),Core Motion(ton access motion-based info on the device),Foundation(Using Objective C), Healthkit (handles health-related info of the user),Homekit(controlling connected devices of the user at home),Social( to access user’s social media accounts) and Storekit Framework( supports in making in-app purchases from iOS apps).
       
    • Media Layer- Media layer in iOS architecture enables the Graphics, Audio, Video technologies. Graphic Technologies like UIKit Graphics, Core Graphics framework, Core Animation, Core Images, OpenGl ES which handles 2D vector and animating views and 2D and 3D figures, GLKit and Metal. Audio Framework supports rich Audio experience and includes- Media Player Framework, AV Foundation, OpenAL.
      Video Framework includes AV Kit, AV Foundation, Core Media, Also the iOS support
      for the playback of movie files with the .mov, .mp4, .m4v. and .3gp filename
      extensions.

       

    • Cocoa Touch Layer – The layer defines the basic application and support for key technologies such as multitasking, touch-based input, push notifications, and many high-level system services. It includes EventKit, GameKit, iAd, MapKit, PushKit, Twitter and UIKit frameworks.
       
      iOS Architecture
      Source: https://dotnettricksweb.blob.core.windows.net/img/xamarin/ios-architecture.png

     

    Concepts of .ipa file and simulators

    IPA stands for iOS App Store Package. Any file with .ipa extension is an iOS application. It is an archive like ZIP that contains software sets used to develop the iOS app. Each .ipk file can be opened with Apple’s iTunes program. An IPA file has a binary for ARM architecture and can only be installed on an iOS device. IPA files cannot be installed on the iPhone Simulator. To run applications on the simulator, original project files which can be opened using the Xcode SDK are required.
     
    iOS Simulators – These are again programs to test and run the iOS applications without having any physical or the ‘real’ device. The iOS Simulator allows you to rapidly prototype and test builds of your app during the development process. Installed as part of the Xcode tools along with the iOS SDK, iOS Simulator runs on Mac and behaves like a standard Mac app while simulating an iPhone or the iPad environment. iOS simulators require MAC Environment and Xcode to function. To start the iOS simulator, firstly launch the Xcode and then do one of the following:
    1. Choose Xcode > Open Developer Tool > iOS Simulator.
    2. Control-click the Xcode icon in the Dock, and choose Open Developer Tool > iOS

     

    Conclusion

    Operating systems are being revamped using AI and connectivity to the Internet of Things. These technologies are still evolving and both Android community and Apple are trying to lead the way by enhancing the user experience. Android had an upper hand in the past as it has a very active open community to support the development. Although, Apple in the recent past has taken a new approach in getting ahead with technology for e.g. Air Pods and their own coding language Swift. We can be sure that both Android and iOS will be more convenient and interactive as both Google and Apple are the torch bearers of the future.

    In the next blog, we will talk about the types of mobile applications.

    iPhone XS and XS Max Now Available on pCloudy For You to Test Your Apps

    October 10th, 2018 by

    iPhone XS and XS Max on pcloudy

     

    pCloudy announces the support for the brand new iPhone XS and XS Max our real device cloud. You can now test your apps on the latest iPhone devices without any wait. Committed to provide you with the latest, we provide you with fast support for latest devices and OS for mobile app test.

     

    iPhone XS

    Apple iPhone XS

     

    iPhone XSMAX

    Apple iPhone XSMAX

     

    With users becoming more conscious, it’s very important for companies to make sure that their apps run smoothly on a wide spectrum of devices including the latest released devices and OS. It becomes a mandate for enterprise mobility to test their apps on multiple real devices like the recently launched iPhone XS and XS Max to make sure that their apps don’t fail or have to face the brunt of getting bad reviews or ratings on App store. Get your app quality assured!

     

    To know more about what these phones are offering, you can read this blog. Why don’t you test your app on pCloudy, the unified digital app testing platform, to find out the difference in app quality?

    iOS 12 is Now Available on pCloudy. Go Forth and Test Your Apps Now!

    September 18th, 2018 by

    iOS 12 is Available on pCloudy

     

    While Apple fans are eagerly waiting for the new iPhones to be released, pCloudy committed to provide you with the newest, the fastest brings iOS 12 for you to test your apps.

     

    iOS 12 Version

     

    iOS 12 is focused on improving the performance of iOS devices as a whole. Since this big feature announcement can’t be shown through screenshots, instead you need to experience it first-hand to find what’s new. Unlike previous iOS updates, iOS 12 focuses on performance especially on speeding up older devices.

     

    Let’s find out the important and some hidden features in this update:

    Device compatibility: This has been a highly compatible release update for iPhones till date. If your iOS works on iOS 11, iOS 12 will work on those phones. This means that all iPhones from iPhone 5S onward will be compatible with iOS 12.

     

    Smoother and faster

    As mentioned earlier, the prominent feature of iOS 12 isn’t something that has to be explained beyond screenshots. Infact it’s something that offers you to experience on your own. Instead of stuffing too many new features into iOS 12 and adding to some of the already irritating bugs we all experience, Apple is using iOS 12 to focus on bettering the overall performance of its iOS device lineup across the board. Apps should open faster, scrolling should be smoother and crashes should be fewer.

     

    Detailed battery info

    To find out what’s draining the battery on any mobile device is something we all want to learn more about. In iOS 12, you just need to open the Settings app, select Battery and you will have detailed information that you might need. New charts, breakdowns and graphs show you exactly what was using your battery and, perhaps most importantly, when it was used.

     

    iOS 12 Settings

     

    Alternate appearance in FaceID

    There have been many issues reported in the past for the iPhones that support Face ID. Users have had trouble getting authenticated by Face ID while wearing a hat, sunglasses etc. that could change your overall appearance, will get the ability to register a second appearance. The new setting is found in Settings > Face ID & Passcode > Alternate appearance.

    Indeed, this same feature can be used to register a second face to Face ID to give access of your phone to a second person. Just ensure that if you want to remove the second appearance (or face) you will need to reset Face ID.

     

    Automatic OS updates

    A new feature in iOS 12 will automatically install iOS updates on your device without requiring you to manually approve it. You can enable automatic updates in Settings > General > Software Updates > Automatic updates. With this feature enabled, whenever an update is released your iPhone will automatically update while you are away from your phone for long.

     

    Face ID and Passcode

     

    There are multiple other updates and additions in this iOS 12 which you can leverage and assure the quality of your app by testing it on the latest version of iOS now available on pCloudy.

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

    July 27th, 2018 by

    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

    Appium Integration Architecture Redefined! Appium Runs Become Simpler with pCloudy

    July 18th, 2018 by

    Struggling with your Appium test automation?

     

    The much awaited bonanza for Appium users is here. We are up with a newer and simpler Appium integration architecture which can simplify your Appium test automation 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 makes you save 50% of your app testing time.

     

    Watch the video to know more about the new simpler and faster pCloudy Appium architecture.

    Pre-requisites

    • Appium Script
    • APK or IPA file
    • pCloudy Account

    The basic steps to replace your local Appium driver to pCloudy Appium Driver are given below:

    • Upload the apk/ipa from your local system to pCloudy. Check this link to know steps to upload an app for test.
    • Set pCloudy capabilities
      • pCloudy_Username: Enter the email ID with which you have registered on pCloudy. For reference, check this link

        Example: capabilities.setCapability(“pCloudy_Username”, ‘{e-mail-id}’);

      •  

      • pCloudy_ApiKey: API key is important for user’s verification. You can generate the API key from Settings page on device.pcloudy.com. Check this link to get your API key.

        Example: capabilities.setCapability(“pCloudy_ApiKey”, “{api-key}”);

      •  

      • pCloudy_ApplicationName: Enter the application name for the apk/ipa file which you already uploaded in the MyApp/Data.

        Example: capabilities.setCapability(“pCloudy_ApplicationName”, “pCloudyAppiumDemo.apk”);

      •  

      • pCloudy_DurationInMinutes: Enter the duration in minutes for which you want to run the test.

        Example: capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);

      •  

      • pCloudy_DeviceFullName: If you know the device manufacturer, device name and version then enter the full device name.

        Example: capabilities.setCapability(“pCloudy_DeviceFullName”, “Samsung_GalaxyTabA_Android_7.1.1”);

        Note: If you don’t know the Device full name then you can enter pCloudy_DeviceManufacturer and pCloudy_DeviceVersion in the code and it will automatically run command on those devices.

        Example: capabilities.setCapability(“pCloudy_DeviceManafacturer”, “Samsung”);

        capabilities.setCapability(“pCloudy_DeviceVersion”, “5.0.1”);

      •  

    • Use pCloudy Appium endpoint as ” https://device.pcloudy.com/appiumcloud/wd/hub “
    • Create the Appium driver object and perform the execution

    Device capabilities and code snippets to run Appium on Single Android Native App:

     

    @BeforeMethod
    public void prepareTest() throws IOException, InterruptedException {
    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);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, “Samsung”);
    capabilities.setCapability(“pCloudy_DeviceVersion”, “5.0.1”);

    Appium Integration Architecture


    Device capabilities and code snippets to run Appium on Multiple Android Native Apps:

     

    @Parameters({ “deviceName” })
    @BeforeMethod
    public void prepareTest(String deviceName) throws IOException, InterruptedException {
    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_DeviceManafacturer”, deviceName);
    driver = new AndroidDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceVersion”, “5.0.1”);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Samsung_GalaxyTabA_Android_7.1.1”);

    Code 2


    Device capabilities and code snippets to run Appium on Single iOS Native Apps:

     

    @BeforeMethod
    public void prepareTest() throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email Id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your API Key”);
    capabilities.setCapability(“pCloudy_ApplicationName”, “TestmunkDemo.ipa”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Apple_iPhone6S_Ios_11.2.0”);
    driver = new IOSDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, “Apple”);
    capabilities.setCapability(“pCloudy_DeviceVersion”, “10.3.2”);

    Code 3


    Device capabilities and code snippets to run Appium on Multiple iOS Native Apps:

     

    @Parameters({ “deviceName” })
    @BeforeMethod
    public void prepareTest(String deviceName) throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email-id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your APIKey”);
    capabilities.setCapability(“pCloudy_ApplicationName”, “TestmunkDemo.ipa”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, deviceName);
    driver = new IOSDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceVersion”, “10.3.2”);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Apple_iPhone6S_Ios_11.2.0”);

    Code 4


    Device capabilities and code snippets to run on Single iOS-Browser App:

     

    @BeforeMethod
    public void prepareTest() throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email-id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your APIKey”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Apple_iPhone6S_Ios_11.2.0”);
    capabilities.setBrowserName(“Safari”);
    driver = new IOSDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, “Apple”);
    capabilities.setCapability(“pCloudy_DeviceVersion”, “10.3.2”);

    Code 5


    Device capabilities and code snippets to run on Multiple iOS-Browser App:

     

    @Parameters({ “deviceName” })
    @BeforeMethod
    public void prepareTest(String deviceName) throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email-id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your APIKey”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, deviceName);
    capabilities.setBrowserName(“Safari”);
    driver = new IOSDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceVersion”, “10.3.2”);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Apple_iPhone6S_Ios_11.2.0”);

    Multiple Browser App


    Device capabilities and code snippets to run on Single Android-Browser App:

     

    @BeforeMethod
    public void prepareTest() throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email-id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your APIKey”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, “Samsung”);
    capabilities.setBrowserName(“Chrome”);
    driver = new AndroidDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceVersion”, “5.0.1”);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Samsung_GalaxyTabA_Android_7.1.1”);

    Single Android Browser App


    Device capabilities and code snippets to run on Multiple Android-Browser Apps:

     

    @Parameters({ “deviceName” })
    @BeforeMethod
    public void prepareTest(String deviceName) throws IOException, InterruptedException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(“pCloudy_Username”, “Enter your email-id”);
    capabilities.setCapability(“pCloudy_ApiKey”, “Enter your APIKey”);
    capabilities.setCapability(“pCloudy_DurationInMinutes”, 5);
    capabilities.setCapability(“pCloudy_DeviceManafacturer”, deviceName);
    capabilities.setBrowserName(“Chrome”);
    driver = new AndroidDriver(new URL(“https://device.pcloudy.com/appiumcloud/wd/hub”), capabilities);
    }
    Note: Capabilities mentioned below are optional:
    capabilities.setCapability(“pCloudy_DeviceVersion”, “5.0.1”);
    capabilities.setCapability(“pCloudy_DeviceFullName”, “Samsung_GalaxyTabA_Android_7.1.1”);

    Multiple Android Browser App

    pCloudy Announces Availability of iOS 12 Devices on Cloud

    June 11th, 2018 by

    iOS 12 Now Available in pCloudy

     

    We are committed to keep you ahead of others: pCloudy is one of the fastest to release support of iOS 12 beta devices on cloud.

     

    iOS 12 new Version

    Apple iPhone 6