{"id":69563,"date":"2019-12-30T16:44:11","date_gmt":"2019-12-30T11:14:11","guid":{"rendered":"https:\/\/www.vskills.in\/certification\/tutorial\/?p=69563"},"modified":"2024-04-12T14:21:53","modified_gmt":"2024-04-12T08:51:53","slug":"the-uiautomation-driver-for-ios","status":"publish","type":"page","link":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/","title":{"rendered":"UIAutomation Driver for iOS"},"content":{"rendered":"\n<p><a href=\"https:\/\/www.vskills.in\/certification\/tutorial\/mobile-testing-appium-tutorials\/\" target=\"_blank\" rel=\"noreferrer noopener\">Go back to tutorial<\/a><\/p>\n\n\n<h1><strong>UIAutomation Driver for iOS<\/strong><\/h1>\n<p>In general, UIAutomation Driver is DEPRECATED and should not be used unless absolutely necessary. The information in this doc may not keep up to date with reality. Further, the driver will be removed in a future version of Appium. Therefore, to begin iOS automation with Appium today, please use the XCUITest Driver instead.<\/p>\n<p>But, you must remember that Appium&#8217;s former method for iOS app automation was based on UIAutomation. Moreover, the UIAutomation was one of the tools included in Apple&#8217;s Instruments profiling system, and provided a JavaScript API that ran synchronously in the context of a single app. Also, the Appium UIAutomation driver established an asynchronous, session-based WebDriver front end for this API.<\/p>\n<p>Remember, the development of the UIAutomation driver is done at the appium-ios-driver repo.<\/p>\n<h3><strong>What are requirements and support for UIAutomation Driver for iOS?<\/strong><\/h3>\n<p>In addition, Appium&#8217;s general requirements include,<\/p>\n<ul>\n<li>Firstly, you would require Xcode 7 or lower.<\/li>\n<li>Secondly, iOS simulators or devices with version 9.3 or lower is also required<\/li>\n<li>Also, all versions of Appium ship with this driver are needed.<\/li>\n<li>Lastly, it requires correct functioning of the driver.<\/li>\n<\/ul>\n<h3><strong>How to use UIAutomation Driver for iOS?<\/strong><\/h3>\n<p>One of the ways to start a session using UIAutomation driver is to set the platformName capability in your new session request to the value of iOS. Also, you must also include appropriate platformVersion, deviceName, and app capabilities, at a minimum.<\/p>\n<h3><strong>Required Capabilities<\/strong><\/h3>\n<p>The UIAutomation driver supports a number of standard Appium capabilities, but has an additional set of capabilities that work for this driver only. Therefore, to automate Safari instead of your own application, leave the app capability empty and instead set the browserName capability to Safari.<\/p>\n<p><strong>Commands<\/strong><\/p>\n<p>In order, to see the various commands Appium supports, and specifically for information on how the commands map to behaviors for the UIAutomation driver.<\/p>\n<p><strong>Simulator Setup<\/strong><\/p>\n<p>Due to limitations of Xcode and the iOS simulator, only one simulator may be open, and automated, at any given time. Therefore, for multiple simulator support, you will need to upgrade to the XCUITest driver<\/p>\n<h3><strong>Real Device Setup<\/strong><\/h3>\n<p>Running tests on real devices is considerably more complicated due to code signing and additional workarounds to Apple limitations. Therefore, the basic process for a successful automation strategy using this driver are as follows &#8211;<\/p>\n<ul>\n<li>Firstly, Build your app with a Debug configuration, for the specific type of real device you will run the test on, ensuring that the app is also signed for running on your specific device.<\/li>\n<li>Secondly, Install the built app to your test device yourself, ensuring it exists on the device and there are no signing issues.<\/li>\n<li>Thirdly, Use the bundle ID of your application as the value of the app capability.<\/li>\n<li>Next, use the UDID of your device as the udid capability.<\/li>\n<li>Lastly, ensure that UI Automation is enabled in the Developer settings.<\/li>\n<\/ul>\n<p><strong>Real Device Hybrid \/ Web Testing<\/strong><\/p>\n<p>Further, hybrid and web testing, Appium requires the use of the Remote Debugging Protocol to send JavaScript to execute inside a web view. Therefore, for real iOS devices, this protocol is encrypted and access must be facilitated using a 3rd-party tool, provided by Google, called ios-webkit-debug-proxy (IWDP).<\/p>\n<p>Tests that run in the Safari browser, we have another hurdle to jump. On real devices, apps that are not signed by the developer cannot be instrumented with UIAutomation. Safari is one such app. Thus we have a helper app called SafariLauncher, which can be signed by the developer. Its sole purpose upon launching is to turn around and launch Safari, which can then be automated via the Remote Debugger in conjunction with IWDP.<\/p>\n<p>&nbsp;<\/p>\n<h4><strong>Enrich your profile and become Job Ready. Practice and Prepare for&nbsp;<a href=\"https:\/\/www.vskills.in\/certification\/testing\/mobile-testing-appium-professional\">Mobile Testing (Appium) Exam<\/a>&nbsp;Now!<\/strong><\/h4>\n<h4><strong>Get expert advice and hundreds of Free Test \u2013 Try&nbsp;<a href=\"https:\/\/www.vskills.in\/practice\/index.php?route=test\/search&amp;search=appium\">Mobile Testing (Appium) Practice Questions<\/a>&nbsp;Now!<\/strong><\/h4>\n\n\n<p><a href=\"https:\/\/www.vskills.in\/certification\/tutorial\/mobile-testing-appium-tutorials\/\" target=\"_blank\" rel=\"noreferrer noopener\">Go back to tutorial<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Go back to tutorial UIAutomation Driver for iOS In general, UIAutomation Driver is DEPRECATED and should not be used unless absolutely necessary. The information in this doc may not keep up to date with reality. Further, the driver will be removed in a future version of Appium. Therefore, to begin iOS automation with Appium today,&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[7891],"tags":[7984],"class_list":["post-69563","page","type-page","status-publish","hentry","category-mobile-testing-appium","tag-the-uiautomation-driver-for-ios"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>UIAutomation Driver for iOS - VskillsTutorial<\/title>\n<meta name=\"description\" content=\"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"UIAutomation Driver for iOS - VskillsTutorial\" \/>\n<meta property=\"og:description\" content=\"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/\" \/>\n<meta property=\"og:site_name\" content=\"Tutorial\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/vskills.in\/\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-12T08:51:53+00:00\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/\",\"name\":\"UIAutomation Driver for iOS - VskillsTutorial\",\"isPartOf\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#website\"},\"datePublished\":\"2019-12-30T11:14:11+00:00\",\"dateModified\":\"2024-04-12T08:51:53+00:00\",\"description\":\"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"UIAutomation Driver for iOS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#website\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\",\"name\":\"Tutorial\",\"description\":\"Vskills - A initiative in elearning and certification\",\"publisher\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.vskills.in\/certification\/tutorial\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#organization\",\"name\":\"Vskills\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg\",\"contentUrl\":\"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg\",\"width\":73,\"height\":55,\"caption\":\"Vskills\"},\"image\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/vskills.in\/\",\"https:\/\/x.com\/vskills_in\",\"https:\/\/www.linkedin.com\/company-beta\/1371554\/\",\"https:\/\/www.youtube.com\/channel\/UCMWnscxPwRF_PqXo9B7q_Tw\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"UIAutomation Driver for iOS - VskillsTutorial","description":"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/","og_locale":"en_US","og_type":"article","og_title":"UIAutomation Driver for iOS - VskillsTutorial","og_description":"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!","og_url":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/","og_site_name":"Tutorial","article_publisher":"https:\/\/www.facebook.com\/vskills.in\/","article_modified_time":"2024-04-12T08:51:53+00:00","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/","url":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/","name":"UIAutomation Driver for iOS - VskillsTutorial","isPartOf":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#website"},"datePublished":"2019-12-30T11:14:11+00:00","dateModified":"2024-04-12T08:51:53+00:00","description":"Boost your chances to become a Certified Mobile Testing Professional with hundreds of real time practice exam on UIAutomation Driver for iOS. Try Now!","breadcrumb":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/the-uiautomation-driver-for-ios\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vskills.in\/certification\/tutorial\/"},{"@type":"ListItem","position":2,"name":"UIAutomation Driver for iOS"}]},{"@type":"WebSite","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#website","url":"https:\/\/www.vskills.in\/certification\/tutorial\/","name":"Tutorial","description":"Vskills - A initiative in elearning and certification","publisher":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.vskills.in\/certification\/tutorial\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#organization","name":"Vskills","url":"https:\/\/www.vskills.in\/certification\/tutorial\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/","url":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg","contentUrl":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-content\/uploads\/2017\/07\/vskills-min-logo.jpg","width":73,"height":55,"caption":"Vskills"},"image":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/vskills.in\/","https:\/\/x.com\/vskills_in","https:\/\/www.linkedin.com\/company-beta\/1371554\/","https:\/\/www.youtube.com\/channel\/UCMWnscxPwRF_PqXo9B7q_Tw"]}]}},"_links":{"self":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/69563","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/comments?post=69563"}],"version-history":[{"count":7,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/69563\/revisions"}],"predecessor-version":[{"id":84621,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/69563\/revisions\/84621"}],"wp:attachment":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/media?parent=69563"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/categories?post=69563"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/tags?post=69563"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}