{"id":275,"date":"2024-05-31T09:17:05","date_gmt":"2024-05-31T09:17:05","guid":{"rendered":"https:\/\/robotqa.com\/blog\/?p=275"},"modified":"2024-05-31T09:17:05","modified_gmt":"2024-05-31T09:17:05","slug":"webdriveragent-ios-testing","status":"publish","type":"post","link":"https:\/\/robotqa.com\/blog\/webdriveragent-ios-testing\/","title":{"rendered":"Basics of Webdriveragent Appium iOS testing"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-277\" src=\"http:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832.png\" alt=\"wda-xcode\" width=\"3024\" height=\"1994\" srcset=\"https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832.png 3024w, https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832-300x198.png 300w, https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832-1024x675.png 1024w, https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832-768x506.png 768w, https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832-1536x1013.png 1536w, https:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/2024053109164832-2048x1350.png 2048w\" sizes=\"auto, (max-width: 3024px) 100vw, 3024px\" \/><\/p>\n<p><strong>About WebdriverAgent\u00a0<\/strong><\/p>\n<p>Webdriver agent (WDA)\u00a0 is an open-source project used for iOS automation testing by Appium. This project is responsible for actions ie. clicking, swiping, tapping. Initially started by Facebook (Github <a href=\"https:\/\/github.com\/facebookarchive\/WebDriverAgent\">link<\/a>), the project has been archived, and now the Appium team continues development in a new <a href=\"https:\/\/github.com\/appium\/WebDriverAgent\">repo<\/a>. We strongly recommend both installing WebDriverAgent manually before iOS testing and Appium WDA configuration. That is why Appium will attempt to install its own WDA inside node modules <span class=\"s1\"><strong>appium-xcuitest-driver\/node_modules\/appium-webdriveragent<\/strong>. So that, you have to configure WDA (the same steps of manual configuration) inside of Appium before testing.<\/span><\/p>\n<p><strong>How to Install WDA<\/strong><\/p>\n<p>Firstly, download the WDA Release <a href=\"https:\/\/github.com\/appium\/WebDriverAgent\/releases\">package<\/a>.<\/p>\n<p><strong><em>NOTE: <\/em><\/strong>Do not clone the repo. Sometimes, pre-release commits cause the unexpected behavior during testing.<\/p>\n<p>After that, firstly we have to configure &#8220;Signing &amp; Capabilities&#8221; of <strong>WebDriverAgentRunner<\/strong> and <strong>WebDriverAgentLib<\/strong> targets. Select your Team signing option and build the WebDriverAgentRunner project: Product&#8211;&gt;Build For&#8211;&gt;Testing.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-276\" src=\"http:\/\/blog.robotqa.com\/wp-content\/uploads\/2024\/05\/202405310915498.jpg\" alt=\"wda-ios-testing\" width=\"4284\" height=\"5712\" \/><\/p>\n<p>Building WDA can be stressful and challenging. If you encounter any issues, please contact us, and we will share a blog about it.<\/p>\n<p>Once the project build is finished, install WDA on your device. To install WDA, go to Product&#8211;&gt;Perform Action&#8211;&gt;Test Without Building option. This will install WDA to your device and start WDA server (default port is: 8100). You will see the &#8220;Automation Running&#8221; interface on your device screen, indicating that you have successfully configured and installed WDA on your phone. Do not forget to follow the same steps for Appium WDA <span class=\"s1\"><strong>appium-xcuitest-driver\/node_modules\/appium-webdriveragent. <\/strong>Now you are ready for Appium iOS testing.\u00a0<\/span><\/p>\n<p>Happy Testing<\/p>\n","protected":false},"excerpt":{"rendered":"<p>About WebdriverAgent\u00a0 Webdriver agent (WDA)\u00a0 is an open-source project used for iOS automation testing by Appium. This project is responsible for actions ie. clicking, swiping, tapping. Initially started by Facebook (Github link), the project has been archived, and now the&#8230;<\/p>\n","protected":false},"author":1,"featured_media":277,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[28,29,30,31],"class_list":["post-275","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automation-testing","tag-appium-ios","tag-ios-testing","tag-wda","tag-webdriveragent"],"_links":{"self":[{"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/posts\/275","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/comments?post=275"}],"version-history":[{"count":0,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/posts\/275\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/media\/277"}],"wp:attachment":[{"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/media?parent=275"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/categories?post=275"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/robotqa.com\/blog\/wp-json\/wp\/v2\/tags?post=275"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}