{"id":69557,"date":"2019-12-30T16:42:44","date_gmt":"2019-12-30T11:12:44","guid":{"rendered":"https:\/\/www.vskills.in\/certification\/tutorial\/?p=69557"},"modified":"2024-04-12T14:21:53","modified_gmt":"2024-04-12T08:51:53","slug":"the-xcuitest-driver-for-ios","status":"publish","type":"page","link":"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/","title":{"rendered":"XCUITest 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>XCUITest Driver for iOS<\/strong><\/h1>\n<p>XCUITest driver is the primary support for automating Appium&#8217;s&nbsp; iOS apps. Moreover, this driver leverages Apple&#8217;s XCUITest libraries in order to facilitate automation of your app. Further, this access to XCUITest is mediated by the WebDriverAgent server. WDA is a WebDriver-compatible server that runs in the context of an iOS simulator or device and exposes the XCUITest API. Further, Appium&#8217;s XCUITest driver manages WDA as a subprocess opaque to the Appium user. Also. the development of the XCUITest driver happens at the appium-xcuitest-driver repo.<\/p>\n<h3><strong>Requirements and Support &#8211; XCUITest driver<\/strong><\/h3>\n<p>In addition to Appium&#8217;s general requirements, following are the requirement to use XCUITest driver<\/p>\n<ul>\n<li>Firstly, the Apple&#8217;s XCUITest library is only available on iOS simulators and devices that are running iOS 9.3 or higher.<\/li>\n<li>Secondly,you should have a Mac computer with macOS 10.11 or 10.12 is required.<\/li>\n<li>Thirdly, Xcode 7 or higher is required.<\/li>\n<li>Also, the XCUITest driver was available in Appium starting with Appium 1.6.<\/li>\n<li>Lastly, for correct functioning of the driver, additional system libraries are required.<\/li>\n<\/ul>\n<h3><strong>Using XCUITest driver<\/strong><\/h3>\n<p>At first, the way to start a session using the XCUITest driver is by including the automationName capability in your new session request, with the value XCUITest. Also, you must also include appropriate platformName, platformVersion, deviceName, and app capabilities, at a minimum.<\/p>\n<p>Also, remember, the platformName should be iOS for iPhone or iPad. tvOS devices are available if the platformName is tvOS.<\/p>\n<ul>\n<li>iOS json { &#8220;automationName&#8221;: &#8220;XCUITest&#8221;, &#8220;platformName&#8221;: &#8220;iOS&#8221;, &#8220;platformVersion&#8221;: &#8220;12.2&#8221;, &#8220;deviceName&#8221;: &#8220;iPhone 8&#8221;, &#8230; }<\/li>\n<li>tvOS json { &#8220;automationName&#8221;: &#8220;XCUITest&#8221;, &#8220;platformName&#8221;: &#8220;tvOS&#8221;, &#8220;platformVersion&#8221;: &#8220;12.2&#8221;, &#8220;deviceName&#8221;: &#8220;Apple TV&#8221;, &#8230; }<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><strong>External dependencies<\/strong><\/h3>\n<p>In addition, to the git submodules, this package depends on libimobiledevice to do certain things. Therefore, you should install it with Homebrew,<\/p>\n<p>brew install libimobiledevice &#8211;HEAD&nbsp; # install from HEAD to get important updates<\/p>\n<p>brew install ideviceinstaller&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # only works for ios 9. for ios 10<\/p>\n<p>Further, there is also a dependency, made necessary by Facebook&#8217;s WebDriverAgent, for the Carthage dependency manager. In case, you do not have Carthage on your system, it can also be installed with Homebrew,<\/p>\n<p>brew install carthage<\/p>\n<p>ideviceinstaller doesn&#8217;t work with iOS 10 yet. So we need to install ios-deploy<\/p>\n<p>npm install -g ios-deploy<\/p>\n<h3><\/h3>\n<h3><strong>Capabilities<\/strong><\/h3>\n<p>XCUITest driver supports a number of standard Appium capabilities, but with additional set of capabilities that modulate the behavior of the driver. Therefore, in order to automate Safari instead of your own application, leave the app capability empty and instead set the browserName capability to Safari.<\/p>\n<ul>\n<li><strong>Commands: <\/strong>In order to see the various commands Appium supports, and specifically for information on how the commands map to behaviors for the XCUITest driver.<\/li>\n<li><strong>Basic Setup: <\/strong>It is recommend to use of Homebrew for installing system dependencies. Further, you must ensure that you have Appium&#8217;s general dependencies installed and configured: bash brew install carthage<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Real Device Setup<\/strong><\/p>\n<p>Now, the process of automating a real device with XCUITest is considerably more complicated, due to Apple&#8217;s restrictions around running apps on real devices. Therefore, after set up, running a session on a real device is achieved by using the desired capabilities including app or bundleId and udid<span style=\"font-size: 14px;\">.&nbsp;<\/span><\/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 XCUITest Driver for iOS XCUITest driver is the primary support for automating Appium&#8217;s&nbsp; iOS apps. Moreover, this driver leverages Apple&#8217;s XCUITest libraries in order to facilitate automation of your app. Further, this access to XCUITest is mediated by the WebDriverAgent server. WDA is a WebDriver-compatible server that runs in the context&#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":[7981],"class_list":["post-69557","page","type-page","status-publish","hentry","category-mobile-testing-appium","tag-the-xcuitest-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>XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial<\/title>\n<meta name=\"description\" content=\"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS 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-xcuitest-driver-for-ios\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial\" \/>\n<meta property=\"og:description\" content=\"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS Now!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-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-xcuitest-driver-for-ios\/\",\"url\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/\",\"name\":\"XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial\",\"isPartOf\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/#website\"},\"datePublished\":\"2019-12-30T11:12:44+00:00\",\"dateModified\":\"2024-04-12T08:51:53+00:00\",\"description\":\"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS Now!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.vskills.in\/certification\/tutorial\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"XCUITest 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":"XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial","description":"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS 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-xcuitest-driver-for-ios\/","og_locale":"en_US","og_type":"article","og_title":"XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial","og_description":"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS Now!","og_url":"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-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-xcuitest-driver-for-ios\/","url":"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/","name":"XCUITest Driver for iOS - Mobile Testing (Appium) - Vskills Tutorial","isPartOf":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/#website"},"datePublished":"2019-12-30T11:12:44+00:00","dateModified":"2024-04-12T08:51:53+00:00","description":"Get ready to become a Certified Mobile Testing (Appium) Professionals with real time practice exam. Learn more about XCUITest Driver for iOS Now!","breadcrumb":{"@id":"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.vskills.in\/certification\/tutorial\/the-xcuitest-driver-for-ios\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.vskills.in\/certification\/tutorial\/"},{"@type":"ListItem","position":2,"name":"XCUITest 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\/69557","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=69557"}],"version-history":[{"count":6,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/69557\/revisions"}],"predecessor-version":[{"id":84624,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/pages\/69557\/revisions\/84624"}],"wp:attachment":[{"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/media?parent=69557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/categories?post=69557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vskills.in\/certification\/tutorial\/wp-json\/wp\/v2\/tags?post=69557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}