@appium/mcp-documentation 1.0.3 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (417) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/package.json +3 -6
  3. package/src/resources/submodules/appium/.github/PULL_REQUEST_TEMPLATE.md +28 -0
  4. package/src/resources/submodules/appium/.github/copilot-instructions.md +9 -0
  5. package/src/resources/submodules/appium/CHANGELOG.md +45 -0
  6. package/src/resources/submodules/appium/GOVERNANCE.md +189 -0
  7. package/src/resources/submodules/appium/README.md +221 -0
  8. package/src/resources/submodules/appium/ROADMAP.md +30 -0
  9. package/src/resources/submodules/appium/SPONSORS.md +3 -0
  10. package/src/resources/submodules/appium/docs/README.md +6 -0
  11. package/src/resources/submodules/appium/docs/payout.md +35 -0
  12. package/src/resources/submodules/appium/packages/appium/CHANGELOG.md +1547 -0
  13. package/src/resources/submodules/appium/packages/appium/README.md +221 -0
  14. package/src/resources/submodules/appium/packages/appium/docs/en/blog/index.md +2 -0
  15. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-appiumconf2024.md +45 -0
  16. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  17. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  18. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-lambdatest-as-development-partner.md +36 -0
  19. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-lambdatest-as-strategic-partner.md +42 -0
  20. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  21. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sponsorship-program.md +48 -0
  22. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/appium3.md +40 -0
  23. package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/hello-world.md +15 -0
  24. package/src/resources/submodules/appium/packages/appium/docs/en/contributing/index.md +150 -0
  25. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-docs.md +86 -0
  26. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-doctor-checks.md +141 -0
  27. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-drivers.md +1002 -0
  28. package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-plugins.md +523 -0
  29. package/src/resources/submodules/appium/packages/appium/docs/en/developing/config-system.md +451 -0
  30. package/src/resources/submodules/appium/packages/appium/docs/en/developing/index.md +18 -0
  31. package/src/resources/submodules/appium/packages/appium/docs/en/developing/sensitive.md +49 -0
  32. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/clients.md +132 -0
  33. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/drivers.md +207 -0
  34. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/index.md +45 -0
  35. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/plugins.md +138 -0
  36. package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/tools.md +106 -0
  37. package/src/resources/submodules/appium/packages/appium/docs/en/guides/branch-testing.md +57 -0
  38. package/src/resources/submodules/appium/packages/appium/docs/en/guides/caching.md +76 -0
  39. package/src/resources/submodules/appium/packages/appium/docs/en/guides/caps.md +271 -0
  40. package/src/resources/submodules/appium/packages/appium/docs/en/guides/config.md +98 -0
  41. package/src/resources/submodules/appium/packages/appium/docs/en/guides/context.md +44 -0
  42. package/src/resources/submodules/appium/packages/appium/docs/en/guides/event-timing.md +73 -0
  43. package/src/resources/submodules/appium/packages/appium/docs/en/guides/execute-methods.md +122 -0
  44. package/src/resources/submodules/appium/packages/appium/docs/en/guides/grid.md +178 -0
  45. package/src/resources/submodules/appium/packages/appium/docs/en/guides/headers.md +17 -0
  46. package/src/resources/submodules/appium/packages/appium/docs/en/guides/log-filters.md +86 -0
  47. package/src/resources/submodules/appium/packages/appium/docs/en/guides/managing-exts.md +87 -0
  48. package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-1-to-2.md +368 -0
  49. package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-2-to-3.md +464 -0
  50. package/src/resources/submodules/appium/packages/appium/docs/en/guides/security.md +87 -0
  51. package/src/resources/submodules/appium/packages/appium/docs/en/guides/settings.md +68 -0
  52. package/src/resources/submodules/appium/packages/appium/docs/en/guides/tls.md +42 -0
  53. package/src/resources/submodules/appium/packages/appium/docs/en/index.md +59 -0
  54. package/src/resources/submodules/appium/packages/appium/docs/en/intro/appium.md +202 -0
  55. package/src/resources/submodules/appium/packages/appium/docs/en/intro/clients.md +127 -0
  56. package/src/resources/submodules/appium/packages/appium/docs/en/intro/drivers.md +188 -0
  57. package/src/resources/submodules/appium/packages/appium/docs/en/intro/history.md +196 -0
  58. package/src/resources/submodules/appium/packages/appium/docs/en/intro/index.md +39 -0
  59. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/index.md +29 -0
  60. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/install.md +50 -0
  61. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/next-steps.md +23 -0
  62. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/requirements.md +29 -0
  63. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-dotnet.md +105 -0
  64. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-java.md +23 -0
  65. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-js.md +75 -0
  66. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-py.md +60 -0
  67. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-rb.md +83 -0
  68. package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/uiauto2-driver.md +144 -0
  69. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/appium.md +394 -0
  70. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/bidi.md +70 -0
  71. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/index.md +30 -0
  72. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/jsonwp.md +214 -0
  73. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/mjsonwp.md +151 -0
  74. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/others.md +736 -0
  75. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/plugins.md +289 -0
  76. package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/webdriver.md +1114 -0
  77. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/env-vars.md +31 -0
  78. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/extensions.md +246 -0
  79. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/index.md +36 -0
  80. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/insecure-features.md +24 -0
  81. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/server.md +78 -0
  82. package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/setup.md +76 -0
  83. package/src/resources/submodules/appium/packages/appium/docs/en/reference/index.md +31 -0
  84. package/src/resources/submodules/appium/packages/appium/docs/en/reference/session/caps.md +56 -0
  85. package/src/resources/submodules/appium/packages/appium/docs/en/reference/session/index.md +23 -0
  86. package/src/resources/submodules/appium/packages/appium/docs/en/resources/index.md +28 -0
  87. package/src/resources/submodules/appium/packages/appium/docs/en/sponsors/index.md +69 -0
  88. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/index.md +2 -0
  89. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-appiumconf2024.md +45 -0
  90. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  91. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  92. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-lambdatest-as-development-partner.md +34 -0
  93. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
  94. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  95. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sponsorship-program.md +48 -0
  96. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/appium3.md +40 -0
  97. package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/hello-world.md +15 -0
  98. package/src/resources/submodules/appium/packages/appium/docs/ja/contributing/index.md +158 -0
  99. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-docs.md +86 -0
  100. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-doctor-checks.md +141 -0
  101. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-drivers.md +1010 -0
  102. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-plugins.md +529 -0
  103. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/config-system.md +468 -0
  104. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/index.md +18 -0
  105. package/src/resources/submodules/appium/packages/appium/docs/ja/developing/sensitive.md +49 -0
  106. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/clients.md +143 -0
  107. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/drivers.md +219 -0
  108. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/index.md +45 -0
  109. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/plugins.md +140 -0
  110. package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/tools.md +115 -0
  111. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/branch-testing.md +57 -0
  112. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caching.md +78 -0
  113. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caps.md +276 -0
  114. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/config.md +102 -0
  115. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/context.md +44 -0
  116. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/event-timing.md +75 -0
  117. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/execute-methods.md +142 -0
  118. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/grid.md +178 -0
  119. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/headers.md +17 -0
  120. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/log-filters.md +86 -0
  121. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/managing-exts.md +89 -0
  122. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-1-to-2.md +402 -0
  123. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-2-to-3.md +458 -0
  124. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/security.md +89 -0
  125. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/settings.md +70 -0
  126. package/src/resources/submodules/appium/packages/appium/docs/ja/guides/tls.md +43 -0
  127. package/src/resources/submodules/appium/packages/appium/docs/ja/index.md +55 -0
  128. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/appium.md +191 -0
  129. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/clients.md +139 -0
  130. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/drivers.md +188 -0
  131. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/history.md +196 -0
  132. package/src/resources/submodules/appium/packages/appium/docs/ja/intro/index.md +39 -0
  133. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/index.md +23 -0
  134. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/install.md +47 -0
  135. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/next-steps.md +19 -0
  136. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/requirements.md +29 -0
  137. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-dotnet.md +107 -0
  138. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-java.md +23 -0
  139. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-js.md +77 -0
  140. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-py.md +63 -0
  141. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-rb.md +85 -0
  142. package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/uiauto2-driver.md +148 -0
  143. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/appium.md +395 -0
  144. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/bidi.md +71 -0
  145. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/index.md +30 -0
  146. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/jsonwp.md +215 -0
  147. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/mjsonwp.md +152 -0
  148. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/others.md +737 -0
  149. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/plugins.md +291 -0
  150. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/webdriver.md +1114 -0
  151. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/env-vars.md +31 -0
  152. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/extensions.md +247 -0
  153. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/index.md +36 -0
  154. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/insecure-features.md +23 -0
  155. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/server.md +78 -0
  156. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/setup.md +78 -0
  157. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/index.md +31 -0
  158. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/session/caps.md +56 -0
  159. package/src/resources/submodules/appium/packages/appium/docs/ja/reference/session/index.md +23 -0
  160. package/src/resources/submodules/appium/packages/appium/docs/ja/resources/index.md +28 -0
  161. package/src/resources/submodules/appium/packages/appium/docs/ja/sponsors/index.md +66 -0
  162. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz-white.png +0 -0
  163. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz.png +0 -0
  164. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-white.png +0 -0
  165. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo.png +0 -0
  166. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png +0 -0
  167. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-light.png +0 -0
  168. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-dark.png +0 -0
  169. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-light.png +0 -0
  170. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-sauce.png +0 -0
  171. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-testmuai-dark.png +0 -0
  172. package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-testmuai-light.png +0 -0
  173. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/index.md +2 -0
  174. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-appiumconf2024.md +45 -0
  175. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
  176. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-headspin-as-development-partner.md +47 -0
  177. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-lambdatest-as-development-partner.md +34 -0
  178. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
  179. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
  180. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sponsorship-program.md +48 -0
  181. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/appium3.md +40 -0
  182. package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/hello-world.md +15 -0
  183. package/src/resources/submodules/appium/packages/appium/docs/zh/contributing/index.md +132 -0
  184. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-docs.md +86 -0
  185. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-doctor-checks.md +141 -0
  186. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-drivers.md +1010 -0
  187. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-plugins.md +529 -0
  188. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/config-system.md +468 -0
  189. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/index.md +18 -0
  190. package/src/resources/submodules/appium/packages/appium/docs/zh/developing/sensitive.md +49 -0
  191. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/clients.md +143 -0
  192. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/drivers.md +219 -0
  193. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/index.md +45 -0
  194. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/plugins.md +140 -0
  195. package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/tools.md +115 -0
  196. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/branch-testing.md +57 -0
  197. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caching.md +78 -0
  198. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caps.md +279 -0
  199. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/config.md +102 -0
  200. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/context.md +44 -0
  201. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/event-timing.md +75 -0
  202. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/execute-methods.md +142 -0
  203. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/grid.md +178 -0
  204. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/headers.md +17 -0
  205. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/log-filters.md +86 -0
  206. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/managing-exts.md +89 -0
  207. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-1-to-2.md +410 -0
  208. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-2-to-3.md +459 -0
  209. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/security.md +89 -0
  210. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/settings.md +70 -0
  211. package/src/resources/submodules/appium/packages/appium/docs/zh/guides/tls.md +43 -0
  212. package/src/resources/submodules/appium/packages/appium/docs/zh/index.md +54 -0
  213. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/appium.md +91 -0
  214. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/clients.md +100 -0
  215. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/drivers.md +101 -0
  216. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/history.md +72 -0
  217. package/src/resources/submodules/appium/packages/appium/docs/zh/intro/index.md +36 -0
  218. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/index.md +23 -0
  219. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/install.md +47 -0
  220. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/next-steps.md +19 -0
  221. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/requirements.md +21 -0
  222. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-dotnet.md +99 -0
  223. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-java.md +20 -0
  224. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-js.md +62 -0
  225. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-py.md +57 -0
  226. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-rb.md +80 -0
  227. package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/uiauto2-driver.md +119 -0
  228. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/appium.md +395 -0
  229. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/bidi.md +71 -0
  230. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/index.md +30 -0
  231. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/jsonwp.md +215 -0
  232. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/mjsonwp.md +152 -0
  233. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/others.md +737 -0
  234. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/plugins.md +291 -0
  235. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/webdriver.md +1114 -0
  236. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/env-vars.md +31 -0
  237. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/extensions.md +247 -0
  238. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/index.md +36 -0
  239. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/insecure-features.md +23 -0
  240. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/server.md +78 -0
  241. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/setup.md +78 -0
  242. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/index.md +31 -0
  243. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/session/caps.md +56 -0
  244. package/src/resources/submodules/appium/packages/appium/docs/zh/reference/session/index.md +23 -0
  245. package/src/resources/submodules/appium/packages/appium/docs/zh/resources/index.md +28 -0
  246. package/src/resources/submodules/appium/packages/appium/docs/zh/sponsors/index.md +66 -0
  247. package/src/resources/submodules/appium/packages/appium/types/manifest/README.md +30 -0
  248. package/src/resources/submodules/appium/packages/base-driver/CHANGELOG.md +1244 -0
  249. package/src/resources/submodules/appium/packages/base-driver/README.md +15 -0
  250. package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/errors.md +82 -0
  251. package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/protocol-methods.md +182 -0
  252. package/src/resources/submodules/appium/packages/base-driver/static/appium.png +0 -0
  253. package/src/resources/submodules/appium/packages/base-plugin/CHANGELOG.md +764 -0
  254. package/src/resources/submodules/appium/packages/base-plugin/README.md +15 -0
  255. package/src/resources/submodules/appium/packages/docutils/CHANGELOG.md +1038 -0
  256. package/src/resources/submodules/appium/packages/docutils/README.md +27 -0
  257. package/src/resources/submodules/appium/packages/driver-test-support/CHANGELOG.md +790 -0
  258. package/src/resources/submodules/appium/packages/driver-test-support/README.md +103 -0
  259. package/src/resources/submodules/appium/packages/eslint-config-appium-ts/CHANGELOG.md +256 -0
  260. package/src/resources/submodules/appium/packages/eslint-config-appium-ts/README.md +47 -0
  261. package/src/resources/submodules/appium/packages/execute-driver-plugin/CHANGELOG.md +671 -0
  262. package/src/resources/submodules/appium/packages/execute-driver-plugin/README.md +55 -0
  263. package/src/resources/submodules/appium/packages/fake-driver/CHANGELOG.md +603 -0
  264. package/src/resources/submodules/appium/packages/fake-driver/README.md +7 -0
  265. package/src/resources/submodules/appium/packages/fake-driver/lib/screen.png +0 -0
  266. package/src/resources/submodules/appium/packages/fake-plugin/CHANGELOG.md +780 -0
  267. package/src/resources/submodules/appium/packages/fake-plugin/README.md +7 -0
  268. package/src/resources/submodules/appium/packages/images-plugin/CHANGELOG.md +691 -0
  269. package/src/resources/submodules/appium/packages/images-plugin/README.md +27 -0
  270. package/src/resources/submodules/appium/packages/images-plugin/docs/find-by-image.md +65 -0
  271. package/src/resources/submodules/appium/packages/images-plugin/docs/image-comparison.md +203 -0
  272. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/appstore.png +0 -0
  273. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img1.png +0 -0
  274. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2.png +0 -0
  275. package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2_part.png +0 -0
  276. package/src/resources/submodules/appium/packages/logger/CHANGELOG.md +212 -0
  277. package/src/resources/submodules/appium/packages/logger/README.md +31 -0
  278. package/src/resources/submodules/appium/packages/opencv/CHANGELOG.md +446 -0
  279. package/src/resources/submodules/appium/packages/opencv/README.md +68 -0
  280. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/appium-diagram.jpg +0 -0
  281. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc1.png +0 -0
  282. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc2.png +0 -0
  283. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc_rotated.png +0 -0
  284. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/findwaldo.jpg +0 -0
  285. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/number5.png +0 -0
  286. package/src/resources/submodules/appium/packages/opencv/test/e2e/images/waldo.jpg +0 -0
  287. package/src/resources/submodules/appium/packages/plugin-test-support/CHANGELOG.md +610 -0
  288. package/src/resources/submodules/appium/packages/plugin-test-support/README.md +49 -0
  289. package/src/resources/submodules/appium/packages/relaxed-caps-plugin/CHANGELOG.md +209 -0
  290. package/src/resources/submodules/appium/packages/relaxed-caps-plugin/README.md +35 -0
  291. package/src/resources/submodules/appium/packages/schema/CHANGELOG.md +308 -0
  292. package/src/resources/submodules/appium/packages/schema/README.md +50 -0
  293. package/src/resources/submodules/appium/packages/storage-plugin/CHANGELOG.md +157 -0
  294. package/src/resources/submodules/appium/packages/storage-plugin/README.md +83 -0
  295. package/src/resources/submodules/appium/packages/strongbox/CHANGELOG.md +129 -0
  296. package/src/resources/submodules/appium/packages/strongbox/README.md +110 -0
  297. package/src/resources/submodules/appium/packages/support/CHANGELOG.md +1147 -0
  298. package/src/resources/submodules/appium/packages/support/README.md +161 -0
  299. package/src/resources/submodules/appium/packages/tsconfig/CHANGELOG.md +147 -0
  300. package/src/resources/submodules/appium/packages/tsconfig/README.md +19 -0
  301. package/src/resources/submodules/appium/packages/types/CHANGELOG.md +871 -0
  302. package/src/resources/submodules/appium/packages/types/README.md +21 -0
  303. package/src/resources/submodules/appium/packages/universal-xml-plugin/CHANGELOG.md +502 -0
  304. package/src/resources/submodules/appium/packages/universal-xml-plugin/README.md +53 -0
  305. package/src/resources/submodules/appium/renovate/README.md +55 -0
  306. package/src/resources/submodules/appium-skills/.github/dependabot.yml +11 -0
  307. package/src/resources/submodules/appium-skills/.github/workflows/pr-title.yml +10 -0
  308. package/src/resources/submodules/appium-skills/AGENTS.md +214 -0
  309. package/src/resources/submodules/appium-skills/LICENSE +201 -0
  310. package/src/resources/submodules/appium-skills/README.md +33 -0
  311. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/SKILL.md +66 -0
  312. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/community-search.md +51 -0
  313. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/uiautomator2-locators.md +34 -0
  314. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/uiautomator2-session-startup.md +53 -0
  315. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/xcuitest-element-lookup.md +23 -0
  316. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/xcuitest-locators.md +16 -0
  317. package/src/resources/submodules/appium-skills/skills/appium-troubleshooting/references/xcuitest-troubleshooting.md +52 -0
  318. package/src/resources/submodules/appium-skills/skills/environment-setup-android/SKILL.md +346 -0
  319. package/src/resources/submodules/appium-skills/skills/environment-setup-bundletool/SKILL.md +91 -0
  320. package/src/resources/submodules/appium-skills/skills/environment-setup-chromium/SKILL.md +260 -0
  321. package/src/resources/submodules/appium-skills/skills/environment-setup-espresso/SKILL.md +216 -0
  322. package/src/resources/submodules/appium-skills/skills/environment-setup-ffmpeg/SKILL.md +91 -0
  323. package/src/resources/submodules/appium-skills/skills/environment-setup-node/SKILL.md +128 -0
  324. package/src/resources/submodules/appium-skills/skills/environment-setup-uiautomator2/SKILL.md +225 -0
  325. package/src/resources/submodules/appium-skills/skills/environment-setup-xcuitest/SKILL.md +153 -0
  326. package/src/resources/submodules/appium-skills/skills/xcuitest-real-device-config/SKILL.md +488 -0
  327. package/src/resources/submodules/appium-uiautomator2-driver/CHANGELOG.md +1506 -0
  328. package/src/resources/submodules/appium-uiautomator2-driver/README.md +2253 -0
  329. package/src/resources/submodules/appium-uiautomator2-driver/docs/actions.md +72 -0
  330. package/src/resources/submodules/appium-uiautomator2-driver/docs/activity-startup.md +47 -0
  331. package/src/resources/submodules/appium-uiautomator2-driver/docs/android-appbundle.md +69 -0
  332. package/src/resources/submodules/appium-uiautomator2-driver/docs/android-mobile-gestures.md +352 -0
  333. package/src/resources/submodules/appium-uiautomator2-driver/docs/android-multiwindow.md +872 -0
  334. package/src/resources/submodules/appium-uiautomator2-driver/docs/architecture.md +34 -0
  335. package/src/resources/submodules/appium-uiautomator2-driver/docs/bidi.md +50 -0
  336. package/src/resources/submodules/appium-uiautomator2-driver/docs/capability-sets.md +136 -0
  337. package/src/resources/submodules/appium-uiautomator2-driver/docs/mjpeg.md +111 -0
  338. package/src/resources/submodules/appium-uiautomator2-driver/docs/scheduled-actions.md +155 -0
  339. package/src/resources/submodules/appium-uiautomator2-driver/docs/uiautomator-uiselector.md +51 -0
  340. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/main.md +95 -0
  341. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen1.png +0 -0
  342. package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen2.png +0 -0
  343. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/checkered-squares.png +0 -0
  344. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/start-button.png +0 -0
  345. package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/stop-button.png +0 -0
  346. package/src/resources/submodules/appium-xcuitest-driver/.github/ISSUE_TEMPLATE.md +4 -0
  347. package/src/resources/submodules/appium-xcuitest-driver/CHANGELOG.md +3373 -0
  348. package/src/resources/submodules/appium-xcuitest-driver/README.md +55 -0
  349. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo-white.png +0 -0
  350. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo.png +0 -0
  351. package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-plus-xctest.png +0 -0
  352. package/src/resources/submodules/appium-xcuitest-driver/docs/contributing.md +45 -0
  353. package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints-wda.md +61 -0
  354. package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints.md +95 -0
  355. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/device-setup.md +81 -0
  356. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/index.md +36 -0
  357. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/installation.md +38 -0
  358. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/check-prov-prof.png +0 -0
  359. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/create-new-project.png +0 -0
  360. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/create-single-page.png +0 -0
  361. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/no-prov-prof.png +0 -0
  362. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/project-prov-prof.png +0 -0
  363. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/set-up-bundle.png +0 -0
  364. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/untrusted-dev.png +0 -0
  365. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/xcode-bundle-id.png +0 -0
  366. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/xcode-config.png +0 -0
  367. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/xcode-facebook-fail.png +0 -0
  368. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/assets/images/xcode-facebook-succeed.png +0 -0
  369. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/auto-config.md +54 -0
  370. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/basic-manual-config.md +40 -0
  371. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/full-manual-config.md +49 -0
  372. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/generic-device-config.md +75 -0
  373. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/provisioning-profile/index.md +117 -0
  374. package/src/resources/submodules/appium-xcuitest-driver/docs/getting-started/system-requirements.md +131 -0
  375. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/keynote.png +0 -0
  376. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/on_my_iphone.png +0 -0
  377. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/top_files.png +0 -0
  378. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/attach-to-running-wda.md +43 -0
  379. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/audio-capture.md +78 -0
  380. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/biometric-auth.md +29 -0
  381. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/capability-sets.md +169 -0
  382. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/ci-setup.md +47 -0
  383. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/clipboard.md +47 -0
  384. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/file-transfer.md +147 -0
  385. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/gestures.md +55 -0
  386. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/hybrid.md +137 -0
  387. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/input-events.md +67 -0
  388. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/install-certificate.md +20 -0
  389. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/mjpeg.md +98 -0
  390. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/multiple-xcode-versions.md +37 -0
  391. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/parallel-tests.md +39 -0
  392. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/remotexpc-tunnels-real-devices.md +148 -0
  393. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-prebuilt-wda.md +147 -0
  394. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-preinstalled-wda.md +177 -0
  395. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/tvos.md +246 -0
  396. package/src/resources/submodules/appium-xcuitest-driver/docs/guides/wda-custom-server.md +283 -0
  397. package/src/resources/submodules/appium-xcuitest-driver/docs/index.md +36 -0
  398. package/src/resources/submodules/appium-xcuitest-driver/docs/overview.md +137 -0
  399. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/assets/images/useXctestrunFile.png +0 -0
  400. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/bidi.md +192 -0
  401. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/capabilities.md +164 -0
  402. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/commands.md +468 -0
  403. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/element-attributes.md +157 -0
  404. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/env-vars.md +18 -0
  405. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/execute-methods.md +2269 -0
  406. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/ios-predicate.md +196 -0
  407. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/locator-strategies.md +107 -0
  408. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/scripts.md +555 -0
  409. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/security-flags.md +28 -0
  410. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/server-args.md +19 -0
  411. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/settings.md +467 -0
  412. package/src/resources/submodules/appium-xcuitest-driver/docs/reference/xpath-extensions.md +167 -0
  413. package/src/resources/submodules/appium-xcuitest-driver/docs/troubleshooting/element-lookup.md +202 -0
  414. package/src/resources/submodules/appium-xcuitest-driver/docs/troubleshooting/index.md +204 -0
  415. package/src/resources/submodules/appium-xcuitest-driver/docs/troubleshooting/wda-slowness.md +206 -0
  416. package/src/resources/submodules/appium-xcuitest-driver/test/assets/test.png +0 -0
  417. package/src/resources/submodules.zip +0 -0
@@ -0,0 +1,39 @@
1
+ ---
2
+ hide:
3
+ - toc
4
+
5
+ title: Running Tests in Parallel
6
+ ---
7
+
8
+ It is possible to execute tests in parallel using XCUITest driver. Appium allows to do this on a
9
+ per-process (multiple server processes running on different ports managing single session) or a
10
+ per-request basis (single server process managing multiple sessions, more preferable, uses less
11
+ resources and ensures better control over running sessions).
12
+
13
+ !!! note
14
+
15
+ If you are _not_ going to run your tests in parallel, consider enabling the `--session-override`
16
+ Appium server argument. It forces the server to close all pending sessions before a new one
17
+ could be opened, which allows you to avoid possible issues with such sessions silently
18
+ running/expiring in the background.
19
+
20
+ ### Important Real Device Capabilities
21
+
22
+ - `udid` must be a unique device UDID for each parallel session.
23
+ - `wdaLocalPort` must be a unique port number for each parallel session. The default value is `8100`.
24
+ - `derivedDataPath` set the unique derived data path root for each driver instance. This will help
25
+ to avoid possible conflicts and to speed up the parallel execution.
26
+ - `mjpegServerPort` must be a unique port number for each parallel session if you are going to
27
+ record a video stream from it. The default value is `9100`.
28
+
29
+ ### Important Simulator Capabilities
30
+
31
+ - Either `udid`, which is the unique simulator UDID for each parallel session (it could be retrieved
32
+ from `xcrun simctl list` command output), or a unique combination of `deviceName` and
33
+ `platformVersion` capabilities to identify the appropriate simulator with the given name and
34
+ version number for each parallel session.
35
+ - `wdaLocalPort` must be a unique port number for each parallel session. The default value is `8100`.
36
+ - `derivedDataPath` set the unique derived data path root for each driver instance. This will help
37
+ to avoid possible conflicts and to speed up the parallel execution.
38
+ - `mjpegServerPort` must be a unique port number for each parallel session if you are going to
39
+ record a video stream from it. The default value is `9100`.
@@ -0,0 +1,148 @@
1
+ ---
2
+ title: Remote XPC Tunnels
3
+ ---
4
+
5
+ Certain features of the XCUITest driver rely on Remote XPC services and IPv6 tunneling. This
6
+ functionality is provided by the optional [`appium-ios-remotexpc`](https://github.com/appium/appium-ios-remotexpc/)
7
+ library.
8
+
9
+ !!! info
10
+
11
+ The driver only uses remote XPC tunnels for ^^real devices running iOS/tvOS 18 or later^^.
12
+ Real devices running iOS/tvOS < 18 do not support this tunneling mechanism, whereas
13
+ simulators do not need to use it.
14
+
15
+ ## Why Use Remote XPC
16
+
17
+ On iOS/tvOS 18+, Apple routes many system services (including XCTest-related ones) over IPv6-only
18
+ interfaces and Remote XPC endpoints. The XCUITest driver utilizes them for the following features
19
+ (non-exhaustive list):
20
+
21
+ - General communication with wireless Apple TV devices
22
+ - Retrieval of various logs
23
+ - Network monitoring
24
+ - Certificate management
25
+ - Execution of native XCTest test suites
26
+
27
+ ## Prerequisites
28
+
29
+ - macOS or Linux host
30
+ - Real device running iOS/tvOS 18 or later, paired and trusted on its host
31
+ - The driver supports devices connected via `usbmuxd` (wired and wireless), as well as
32
+ wireless tvOS devices (must be paired first, [see tvOS guide](./tvos.md#wireless-tvos-18-or-later))
33
+ - `appium-ios-remotexpc` installed
34
+ - The driver declares this package as an **optional dependency**, so in a normal
35
+ installation npm will install it automatically. You only need to install it manually if
36
+ the optional dependency step failed or you are wiring a custom environment.
37
+
38
+ To verify that the optional dependency and tunnel infrastructure are available, you can run:
39
+
40
+ ```bash
41
+ appium driver doctor xcuitest
42
+ ```
43
+
44
+ Look for the optional checks related to `appium-ios-remotexpc` and “tunnel availability”.
45
+
46
+ ## Creating Tunnels
47
+
48
+ The XCUITest driver exposes a high‑level convenience script that wraps the lower‑level
49
+ `appium-ios-remotexpc` tunnel workflow.
50
+
51
+ !!! warning
52
+
53
+ This script must be run as **sudo/root** to create TUN/TAP interfaces for the tunnel.
54
+
55
+ ```bash
56
+ sudo appium driver run xcuitest tunnel-creation
57
+ ```
58
+
59
+ Refer to [the script reference page](../reference/scripts.md#tunnel-creation) for a list of
60
+ additional options.
61
+
62
+ The script executes the following actions:
63
+
64
+ - Enumerates all connected and trusted iOS/tvOS devices
65
+ - The list of available devices can also be retrieved using the [`list-real-devices`](../reference/scripts.md#list-real-devices)
66
+ script
67
+ - For each device:
68
+ - Starts a Lockdown session
69
+ - Starts `com.apple.internal.devicecompute.CoreDeviceProxy` via Remote XPC
70
+ - Creates an IPv6 tunnel using `TunnelManager.getTunnel(...)`
71
+ - Starts a packet stream server on a local TCP port (default base: `50000`)
72
+ - Builds an in‑memory tunnel registry containing:
73
+ - Device UDID and device ID
74
+ - Tunnel IPv6 address (`Address`) and `RsdPort`
75
+ - Packet stream port and basic metadata
76
+ - Starts an HTTP tunnel registry API server and prints its address
77
+ - Persists the chosen registry port in a per‑driver strongbox entry so that the driver can find it
78
+
79
+ ### Inspecting the Tunnel Registry
80
+
81
+ After a successful script execution, you should see log lines similar to:
82
+
83
+ ```text
84
+ 📁 Tunnel registry API:
85
+ The tunnel registry is now available through the API at:
86
+ http://localhost:<port>/remotexpc/tunnels
87
+ ```
88
+
89
+ You can now use the registry endpoints to retrieve tunnel information:
90
+
91
+ - List all tunnels:
92
+
93
+ ```bash
94
+ curl http://localhost:<port>/remotexpc/tunnels
95
+ ```
96
+
97
+ - Get tunnel for a specific UDID:
98
+
99
+ ```bash
100
+ curl http://localhost:<port>/remotexpc/tunnels/<udid>
101
+ ```
102
+
103
+ The response contains the IPv6 `address`, `rsdPort`, and other metadata required to establish
104
+ Remote XPC connections.
105
+
106
+ ## Running Tests
107
+
108
+ Make sure to create all required tunnel(s) _before_ launching your tests. The tunnel process(es)
109
+ should remaing running in the background, _in addition to_ the Appium server process.
110
+
111
+ No extra capabilities are required to "enable" tunnels; they are automatically used when:
112
+
113
+ - `appium-ios-remotexpc` is installed
114
+ - the tunnel registry server is reachable
115
+ - the platform is a real device running iOS/tvOS 18 or later
116
+
117
+ ### Multiple Sessions
118
+
119
+ The tunnel creation script is multi‑device aware: it creates and registers an independent tunnel
120
+ for each connected device. It can also be limited to specific devices by passing `--udid`/`--appletv-device-id`
121
+ multiple times. The driver can then run multiple sessions concurrently on a single Appium server
122
+ as long as:
123
+
124
+ - Each session uses a different real device (`appium:udid` is unique per session)
125
+ - The tunnels for all those devices are present in the tunnel registry
126
+
127
+ If you frequently add/remove devices, consider occasionally re‑running the tunnel script to refresh
128
+ the registry, or use the `--disconnect-retry-max-attempts`/`--disconnect-retry-interval-ms` options
129
+ to configure automatic reconnection.
130
+
131
+ ### Multiple Appium Servers
132
+
133
+ Since the tunnel registry server is running in a separate process, it is not linked to a specific
134
+ Appium server instance, and can be used by multiple Appium servers simultaneously. To ensure that
135
+ all Appium server instances discover the same tunnel registry, you can set a specific port:
136
+
137
+ ```bash
138
+ sudo appium driver run xcuitest tunnel-creation --tunnel-registry-port 43000
139
+ ```
140
+
141
+ Similarly to running multiple sessions on a single server, make sure that each session uses
142
+ a different device UDID.
143
+
144
+ In more advanced setups (e.g., Docker, multiple hosts, CI agents), you may want to run one
145
+ tunnel‑creation process per container/VM. In such cases, use distinct `--tunnel-registry-port`
146
+ values for each isolation boundary. This keeps tunnel state scoped to each environment, but within
147
+ that boundary you should still avoid running multiple competing tunnel‑creation scripts
148
+ simultaneously, as they may fight over TUN/TAP configuration and `usbmuxd` connections.
@@ -0,0 +1,147 @@
1
+ ---
2
+ title: Run Prebuilt WDA
3
+ ---
4
+
5
+ The XCUITest driver runs `xcodebuild` to build and install the WebDriverAgentRunner (WDA) app on the
6
+ target device. Running the command every time could slow down new session creation.
7
+ You can manually run a modified version of this command in order to prebuild the WDA.
8
+
9
+ ## Understanding How `xcodebuild` Works
10
+
11
+ By default, `xcodebuild` is run with two commands: `build-for-testing` and `test-without-building`.
12
+ `build-for-testing` builds a test bundle package, whereas `test-without-building` actually runs it.
13
+
14
+ For instance, XCUITest driver issues an `xcodebuild` command like so:
15
+
16
+ ```bash
17
+ xcodebuild build-for-testing test-without-building \
18
+ -project WebDriverAgent.xcodeproj \
19
+ -derivedDataPath wda_build \
20
+ -scheme WebDriverAgentRunner \
21
+ -destination "platform=iOS Simulator,name=iPhone 14 Pro" \
22
+ CODE_SIGNING_ALLOWED=NO
23
+ ```
24
+
25
+ This translates to `xcodebuild` building `WebDriverAgent.xcodeproj` and running the resulting
26
+ package on the specified device. The built package will be located in the `wda_build` path.
27
+
28
+ The command can be split into `build-for-testing` and `test-without-building` parts as follows:
29
+
30
+ ```bash
31
+ xcodebuild build-for-testing \
32
+ -project WebDriverAgent.xcodeproj \
33
+ -derivedDataPath wda_build \
34
+ -scheme WebDriverAgentRunner \
35
+ -destination "platform=iOS Simulator,name=iPhone 14 Pro" \
36
+ CODE_SIGNING_ALLOWED=NO
37
+ ```
38
+
39
+ ```bash
40
+ xcodebuild test-without-building \
41
+ -xctestrun wda_build/Build/Products/WebDriverAgentRunner_iphonesimulator16.2-arm64.xctestrun \
42
+ -destination "platform=iOS Simulator,name=iPhone 14 Pro"
43
+ ```
44
+
45
+ * The `build-for-testing` command generates two files: an `.app` package and an `.xctestrun` file, e.g.:
46
+
47
+ ```
48
+ wda_build/Build/Products/Debug-iphonesimulator/WebDriverAgentRunner-Runner.app
49
+ wda_build/Build/Products/WebDriverAgentRunner_iphonesimulator16.2-arm64.xctestrun
50
+ ```
51
+
52
+ The `.xctestrun` file name depends on the `-destination` preference. The file contains metadata
53
+ about the package (the `DependentProductPaths` key).
54
+
55
+ * The `test-without-building` command starts the WDA application for testing by referencing the
56
+ provided `.xctestrun` file. Once this is done, `http://localhost:8100` will be able to receive
57
+ commands for the target device.
58
+
59
+ ## Preparation performance improvement ideas
60
+
61
+ ### Download Prebuilt WDA and run them with `appium:prebuiltWDAPath` and `appium:usePreinstalledWDA`
62
+
63
+ This approach allows the XCUITest driver to start WDA without running `xcodebuild` by using prebuilt WDA packages.
64
+ We recommend this method if you don't need to modify the WDA source code.
65
+
66
+ !!! warning "iOS/tvOS 17+ required for `usePreinstalledWDA`"
67
+
68
+ With WebDriverAgent v13+, `appium:usePreinstalledWDA` and `appium:prebuiltWDAPath` require **iOS/tvOS 17.0 or newer**.
69
+ They are **not supported on iOS 16 and below**. See [Run Preinstalled WebDriverAgentRunner](./run-preinstalled-wda.md)
70
+ for details and alternatives (`xcodebuild` or `appium:webDriverAgentUrl`).
71
+
72
+ [The Appium WebDriverAgent GitHub page](https://github.com/appium/WebDriverAgent/releases) provides
73
+ downloads for WebDriverAgent packages for real devices and simulators.
74
+ WebDriverAgent packages for real devices do not have embedded XCTest frameworks so that
75
+ they can run on iOS 17+ devices. Please read [Run Preinstalled WebDriverAgentRunner](./run-preinstalled-wda.md)
76
+ for more details about running on real devices and simulators. Understanding app signing is also important when working with real devices.
77
+ Simulators need everything, so WDA package sizes for simulators are greater than for real devices.
78
+ The [Release](https://github.com/appium/appium-xcuitest-driver/actions/workflows/publish.js.yml) and
79
+ [Building WebDriverAgent](https://github.com/appium/WebDriverAgent/actions/workflows/wda-package.yml)
80
+ workflows may help with validating the build script.
81
+
82
+ [Run Preinstalled WebDriverAgentRunner](./run-preinstalled-wda.md) provides `appium:prebuiltWDAPath`
83
+ and `appium:usePreinstalledWDA` capabilities.
84
+ These capabilities allow the XCUITest driver to install prebuilt WDA specified with
85
+ `appium:prebuiltWDAPath` and start it **without** running `xcodebuild`.
86
+
87
+ The `download-wda` command helps to download the proper version of WDA for your XCUITest driver version
88
+ for simulator use.
89
+
90
+ ```bash
91
+ appium driver run xcuitest download-wda -- --outdir=/path/to/target/directory --kind=sim --platform=ios
92
+ ```
93
+
94
+ To see all available options for the script, including flags and defaults, run:
95
+
96
+ ```bash
97
+ appium driver run xcuitest download-wda -- --help
98
+ ```
99
+
100
+ Then, starting a new session with capabilities below:
101
+
102
+ ```json
103
+ {
104
+ "appium:usePreinstalledWDA": true,
105
+ "appium:prebuiltWDAPath": "/path/to/target/directory/WebDriverAgentRunner-Runner.app"
106
+ }
107
+ ```
108
+
109
+ The new session starts without an `xcodebuild` run.
110
+
111
+ ### Capabilities for Prebuilt WDA with `appium:useXctestrunFile`, `appium:usePrebuiltWDA` or `appium:prebuildWDA`
112
+
113
+ The XCUITest driver provides two capabilities that allow skipping the `build-for-testing` command,
114
+ and executing only the `test-without-building` command: __`appium:useXctestrunFile`__ and
115
+ __`appium:bootstrapPath`__ (see [Capabilities](../reference/capabilities.md#webdriveragent)).
116
+
117
+ !!! note
118
+
119
+ These capabilities expect that the WDA files are already prebuild, so make sure to first run
120
+ `xcodebuild` to create the files.
121
+
122
+ This method can be used on both real devices and simulators, but real devices requires proper
123
+ signing as described in [Run Preinstalled WebDriverAgentRunner](./run-preinstalled-wda.md).
124
+
125
+ The capabilities can be used as follows:
126
+
127
+ ```json
128
+ {
129
+ "platformName": "ios",
130
+ "appium:automationName": "xcuitest",
131
+ "appium:platformVersion": "18.4",
132
+ "appium:deviceName": "iPhone 16",
133
+ "appium:useXctestrunFile": true,
134
+ "appium:bootstrapPath": "/path/to/wda_build/Build/Products"
135
+ }
136
+ ```
137
+
138
+ Not all combinations have been tested, but the target device can probably be anything.
139
+
140
+ The same thing can be achieved with the __`appium:derivedDataPath`__ and __`appium:usePrebuiltWDA`__
141
+ capabilities, but this may fail if `xcodebuild` cannot find or handle the `.xctestrun` file
142
+ properly. The stability depends on Xcode.
143
+
144
+ __`appium:prebuildWDA`__ lets the XCUITest driver build the WDA before running it, then the session
145
+ will be handled with `appium:usePrebuiltWDA`.
146
+ It might have additional building steps than with `appium:derivedDataPath` and `appium:usePrebuiltWDA`
147
+ combination, but it could help `appium:usePrebuiltWDA` to not manage the WDA project.
@@ -0,0 +1,177 @@
1
+ ---
2
+ title: Run Preinstalled WDA
3
+ ---
4
+
5
+ The XCUITest driver can be configured to launch an already-installed `WebDriverAgentRunner-Runner`
6
+ application (WDA) on a real device and a simulator. This allows you to start a session without the `xcodebuild`
7
+ command execution, improving the session startup performance.
8
+
9
+ !!! warning "iOS/tvOS 17+ required (WebDriverAgent v13+)"
10
+
11
+ Bundled WebDriverAgent v13+ (see [appium/WebDriverAgent#1137](https://github.com/appium/WebDriverAgent/pull/1137))
12
+ launches preinstalled WDA with `devicectl` only. The legacy launch path through `appium-ios-device` /
13
+ Instruments is no longer available.
14
+
15
+ As a result, `appium:usePreinstalledWDA` and `appium:prebuiltWDAPath` work on **iOS/tvOS 17.0 and newer only**.
16
+ They are **not supported on iOS 16 and below**. For older OS versions, use the default `xcodebuild` flow or
17
+ provide `appium:webDriverAgentUrl` if you already have a running WDA server.
18
+
19
+ ## Capabilities
20
+
21
+ - Required
22
+ - [`appium:usePreinstalledWDA`](../reference/capabilities.md#webdriveragent)
23
+ - Optional
24
+ - [`appium:updatedWDABundleId`](../reference/capabilities.md#webdriveragent)
25
+ - [`appium:updatedWDABundleIdSuffix`](../reference/capabilities.md#webdriveragent)
26
+ - [`appium:prebuiltWDAPath`](../reference/capabilities.md#webdriveragent)
27
+
28
+ ## Install WebDriverAgent
29
+
30
+ ### Using Xcode
31
+
32
+ Running a test for the WDA package in Xcode is the easiest way to prepare the device environment:
33
+
34
+ 1. Open WebDriverAgent project in Xcode via `appium driver run xcuitest open-wda`
35
+ 2. Select the _WebDriverAgentRunner_ scheme
36
+ 3. Select the scheme as _Product -> Scheme -> WebDriverAgentRunner_ (or _WebDriverAgentRunner\_tvOS_ for tvOS)
37
+ 4. Select your device in _Product -> Destination_
38
+ 5. Select _Product -> Test_ to build and install the WDA app
39
+
40
+ If using a real device, you may need to change your bundle ID. Please check the
41
+ [Full Manual Provisioning Profile setup](../getting-started/provisioning-profile/full-manual-config.md) for details.
42
+
43
+ ### Using 3rd Party Tools
44
+
45
+ Some 3rd party tools such as [pymobiledevice3](https://github.com/doronz88/pymobiledevice3),
46
+ [ios-deploy](https://github.com/ios-control/ios-deploy), [go-ios](https://github.com/danielpaulus/go-ios) and
47
+ [tidevice](https://github.com/alibaba/taobao-iphone-device) can install the WebDriverAgent package.
48
+
49
+ Some tools let you set an arbitrary bundle identifier (`CFBundleIdentifier` for the `Info.plist`) and sign it with the bundle identifier.
50
+ It may not have `.xctrunner` as the bundle identifier.
51
+ XCUITest driver automatically adds the `.xctrunner` suffix to the provided bundle identifier unless a different suffix is specified by the `appium:updatedWDABundleIdSuffix` capability.
52
+ If the value is an empty string, then no suffix will be added to the provided bundle identifier.
53
+
54
+ The WDA app package (`WebDriverAgentRunner-Runner.app`) can be generated in the _derivedDataPath_
55
+ directory, as explained in [Manual Configuration for a Generic Device](../getting-started/provisioning-profile/generic-device-config.md).
56
+ The app can then be installed without `xcodebuild` using the 3rd party tools.
57
+
58
+ ### Additional requirement for real devices on iOS/tvOS 17+
59
+
60
+ Preinstalled WDA on real devices is started with `xcrun devicectl device process launch`. The runner app should not
61
+ include embedded `Frameworks/XC**` copies (use the device's local XCTest frameworks instead).
62
+
63
+ For example, after building the WebDriverAgent with Xcode with proper sign, it generates `/Users/<user>/Library/Developer/Xcode/DerivedData/WebDriverAgent-ezumztihszjoxgacuhatrhxoklbh/Build/Products/Debug-appletvos/WebDriverAgentRunner-Runner.app`.
64
+ Then you can remove `Frameworks/XC**` in `WebDriverAgentRunner-Runner.app` like `rm Frameworks/WebDriverAgentRunner-Runner.app/XC**`.
65
+
66
+ Configuring `appium:prebuiltWDAPath` to the `/Users/<user>/Library/Developer/Xcode/DerivedData/WebDriverAgent-ezumztihszjoxgacuhatrhxoklbh/Build/Products/Debug-appletvos/WebDriverAgentRunner-Runner.app` would install the `WebDriverAgentRunner-Runner.app`, which has no `Frameworks/XC**` to the target device and launch it with `devicectl` command as part of `appium:usePreinstalledWDA` functionality.
67
+
68
+ !!! note
69
+
70
+ You can also remove `Frameworks/Testing.framework` and `Frameworks/libXCTestSwiftSupport.dylib` to reduce the package size
71
+ because WebDriverAgent doesn't need both. Then, the total size of the WebDriverAgent runner app can be 3MB or less.
72
+ `Testing.framework` is almost 6MB and `libXCTestSwiftSupport.dylib` is 2.6MB with Xcode 16 build.
73
+
74
+ ## Launch the Session
75
+
76
+ After installing the `WebDriverAgentRunner-Runner` application, you can start the Appium server
77
+ and launch an XCUITest driver session with the specified capabilities:
78
+
79
+ ```
80
+ appium
81
+ ```
82
+
83
+ ```ruby
84
+ # Ruby
85
+ capabilities: {
86
+ "platformName": "ios",
87
+ "appium:automationName": "xcuitest",
88
+ "appium:udid": "<udid>",
89
+ "appium:usePreinstalledWDA": true,
90
+ "appium:updatedWDABundleId": "com.appium.WebDriverAgentRunner"
91
+ }
92
+ @core = Appium::Core.for capabilities: capabilities
93
+ driver = @core.start_driver
94
+ # do something
95
+ driver.quit
96
+ ```
97
+
98
+ If the `<udid>` device has a WebDriverAgent package with `com.appium.WebDriverAgentRunner.xctrunner`
99
+ bundle ID, the session will launch the WebDriverAgent process without `xcodebuild`.
100
+
101
+ !!! note
102
+
103
+ Please ensure that the WDA application is launchable before starting an XCUITest driver session.
104
+ For example, check whether the provisioning profile is trusted.
105
+
106
+
107
+ !!! note
108
+
109
+ Please make sure the device under test has the developer disk image mounted.
110
+ This is necessary to start an XCTest session and load the required XCTest libraries from the device.
111
+ For example, starting Xcode after connecting the device to the host machine will mount the developer disk image automatically.
112
+ Using third-party tools can also help to mount the developer disk image service.
113
+ Please check the documentation for each tool to understand how to mount the developer disk image.
114
+
115
+
116
+ ```ruby
117
+ # Ruby
118
+ capabilities: {
119
+ "platformName": "ios",
120
+ "appium:automationName": "xcuitest",
121
+ "appium:udid": "<udid>",
122
+ "appium:usePreinstalledWDA": true,
123
+ "appium:updatedWDABundleId": "io.appium.wda"
124
+ "appium:updatedWDABundleIdSuffix": ""
125
+ }
126
+ @core = Appium::Core.for capabilities: capabilities
127
+ driver = @core.start_driver
128
+ # do something
129
+ driver.quit
130
+ ```
131
+
132
+ If the `<udid>` device has a WebDriverAgent package with `io.appium.wda` bundle ID (it does not have `.xctrunner`),
133
+ the session will launch the WebDriverAgent process without `xcodebuild`.
134
+
135
+ ## Set `appium:prebuiltWDAPath`
136
+
137
+ If the `appium:prebuiltWDAPath` capability is provided with a `WebDriverAgentRunner-Runner.app` test bundle,
138
+ the XCUITest driver will install the application and launch it every test session.
139
+ Test bundles cannot be versioned using `CFBundleVersion` as vanilla applications do usually,
140
+ which is why it is necessary to (re)install them for every test session.
141
+ The test bundle should be signed properly for real devices.
142
+
143
+ Usually you can find the WDA application bundle at the below location if you use Xcode to build it.
144
+
145
+ ```
146
+ ~/Library/Developer/Xcode/DerivedData/WebDriverAgent-<random string>/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app
147
+ ```
148
+
149
+ You can then set your Appium capabilities as follows:
150
+
151
+ ```ruby
152
+ # Ruby
153
+ capabilities: {
154
+ "platformName": "ios",
155
+ "appium:automationName": "xcuitest",
156
+ "appium:udid": "<udid>",
157
+ "appium:usePreinstalledWDA": true,
158
+ "appium:prebuiltWDAPath": "/path/to/Library/Developer/Xcode/DerivedData/WebDriverAgent-<random string>/Build/Products/Debug-iphoneos/WebDriverAgentRunner-Runner.app"
159
+ }
160
+ @core = Appium::Core.for capabilities: capabilities
161
+ driver = @core.start_driver
162
+ # do something
163
+ driver.quit
164
+ ```
165
+
166
+ !!! note
167
+
168
+ As of iOS 17, the testmanagerd service name has changed from `com.apple.testmanagerd` to
169
+ `com.apple.dt.testmanagerd.runner`. It causes an unexpected WDA process crash with embedded
170
+ XCTest frameworks while running a single WebDriverAgent package on various OS environments
171
+ without `xcodebuild`.
172
+
173
+ Since WDA v5.10.0, the module can refer to the device's local XCTest frameworks. It lets the
174
+ Appium/WebDriverAgent package use proper dependencies for the device with a single prebuilt
175
+ WebDriverAgent package. To set this up, you should remove the package internal frameworks from
176
+ `WebDriverAgentRunner-Runner.app` with `rm -rf WebDriverAgentRunner-Runner.app/Frameworks/XC*.framework`.
177
+ The WDA package itself is available from <https://github.com/appium/WebDriverAgent>.