debug your app concept art
March 22, 2017

3 Steps to Debug and Test Your iOS App in the Cloud

Mobile Application Testing

With less than 2 months until WWDC, there’s been no shortage of iOS platform changes since last year. We’ve seen 6 iOS updates since September, iPhone 4.x support retirement, and iOS 10 render tests written in frameworks like Appium unusable until months after release.

Though the stability of the iOS development landscape has improved in the last year, Apple continues to change what it means to develop rich mobile experiences quickly and reliably. Without nimble solutions to validate and verify app quality, iOS developers often fall back to manual testing and lose coding cycles until the technology ecosystem can catch up.

That’s why today, Perfecto is leading the charge to help enterprise teams integrate real iPhones and iPads into critical development paths through a new solution called DevTunnel. Native mobile and web app developers now have instant access to the variety of devices needed to validate new features, run Appium and XCTest scripts early, and quickly troubleshoot production issues from the comfort of their existing toolchain.

Step 1: Connect to a Cloud-based iOS Device

From the Perfecto cloud dashboard, you can easily create an SSH connection to your device, which enables XCode, Safari, and other profiling tools to seamlessly interact with it.

Launch your target platform from a wide variety of real devices, then click on the ‘DevTunnel’ widget:

DevTunnel Debug

Step 2: Validate, debug, and profile your native app’s real experience in XCode

A secure session from your computer to the Perfecto cloud enables the rest of your toolchain to interact with this device, just as if it is connected via a really long USB cable.

After installing the requisite components, you’ll see your device available in XCode:


Indeed, anywhere XCode queries for a list of available devices, your DevTunnel-connected Perfecto device is listed there. This is great when you want to see how a new feature will work on new or legacy platform versions.

DevTunnel also allows developers to run XCTest scripts on specific hardware, platform configurations, and under real user conditions. You can simulate scenarios like high network latency and call interruption through additional Perfecto WindTunnel features, helping teams improve test flakiness and cover more of the real user than ever before.

Instrumentation and profiling tools - such as Allocations, Leaks, Counters, and Energy Log - also work with your Perfecto devices connected via DevTunnel:

Snipping DevTunnel

Step 3: Inspect & troubleshoot your web app in Safari

For web app developers, you can use your DevTunnel connection to debug and troubleshoot web apps as well! When a mobile web browser is launched on the device, your iOS device now appears in the list of resources available to Safari Web Inspector:

Web Inspector

Integrating into these tools allows you to troubleshoot and debug Javascript, HTML5/CSS layout and performance issues in your web apps on cloud-based, real mobile devices. This lets you spend less time hunting around for hardware and more time writing better code.

CSS Layout


Integrating real devices from your Perfecto cloud into dev cycles early helps development teams ship less buggy new code and increase automated test coverage over the real user experience.

Learn more about debugging apps in the cloud by checking out our Remote Device Access page.