appium-mcp 0.0.1 → 1.1.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.
- package/.github/workflows/ci.yml +37 -0
- package/.github/workflows/pr-title.yml +15 -0
- package/.github/workflows/publish.yml +31 -0
- package/.gitmodules +9 -0
- package/.prettierignore +29 -0
- package/.prettierrc +10 -0
- package/.releaserc +37 -0
- package/CHANGELOG.md +37 -0
- package/LICENSE +21 -0
- package/README.md +153 -0
- package/dist/devicemanager/adb-manager.d.ts +71 -0
- package/dist/devicemanager/adb-manager.js +140 -0
- package/dist/devicemanager/adb-manager.js.map +1 -0
- package/dist/devicemanager/ios-manager.d.ts +58 -0
- package/dist/devicemanager/ios-manager.js +122 -0
- package/dist/devicemanager/ios-manager.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/locators/element-filter.d.ts +13 -0
- package/dist/locators/element-filter.js +79 -0
- package/dist/locators/element-filter.js.map +1 -0
- package/dist/locators/generate-all-locators.d.ts +21 -0
- package/dist/locators/generate-all-locators.js +72 -0
- package/dist/locators/generate-all-locators.js.map +1 -0
- package/dist/locators/locator-generation.d.ts +36 -0
- package/dist/locators/locator-generation.js +501 -0
- package/dist/locators/locator-generation.js.map +1 -0
- package/dist/locators/logger.d.ts +5 -0
- package/dist/locators/logger.js +9 -0
- package/dist/locators/logger.js.map +1 -0
- package/dist/locators/source-parsing.d.ts +43 -0
- package/dist/locators/source-parsing.js +100 -0
- package/dist/locators/source-parsing.js.map +1 -0
- package/dist/resources/index.d.ts +1 -0
- package/dist/resources/index.js +7 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/java/template.d.ts +4 -0
- package/dist/resources/java/template.js +82 -0
- package/dist/resources/java/template.js.map +1 -0
- package/dist/schema.d.ts +2 -0
- package/dist/schema.js +5 -0
- package/dist/schema.js.map +1 -0
- package/dist/scripts/simple-index-documentation.d.ts +20 -0
- package/dist/scripts/simple-index-documentation.js +77 -0
- package/dist/scripts/simple-index-documentation.js.map +1 -0
- package/dist/scripts/simple-query-documentation.d.ts +12 -0
- package/dist/scripts/simple-query-documentation.js +52 -0
- package/dist/scripts/simple-query-documentation.js.map +1 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.js +37 -0
- package/dist/server.js.map +1 -0
- package/dist/tests/__mocks__/@appium/support.d.ts +21 -0
- package/dist/tests/__mocks__/@appium/support.js +30 -0
- package/dist/tests/__mocks__/@appium/support.js.map +1 -0
- package/dist/tests/generate-all-locators.test.d.ts +1 -0
- package/dist/tests/generate-all-locators.test.js +140 -0
- package/dist/tests/generate-all-locators.test.js.map +1 -0
- package/dist/tests/test-setup-wda.d.ts +1 -0
- package/dist/tests/test-setup-wda.js +202 -0
- package/dist/tests/test-setup-wda.js.map +1 -0
- package/dist/tools/answer-appium.d.ts +1 -0
- package/dist/tools/answer-appium.js +71 -0
- package/dist/tools/answer-appium.js.map +1 -0
- package/dist/tools/boot-simulator.d.ts +1 -0
- package/dist/tools/boot-simulator.js +71 -0
- package/dist/tools/boot-simulator.js.map +1 -0
- package/dist/tools/create-session.d.ts +1 -0
- package/dist/tools/create-session.js +192 -0
- package/dist/tools/create-session.js.map +1 -0
- package/dist/tools/delete-session.d.ts +1 -0
- package/dist/tools/delete-session.js +47 -0
- package/dist/tools/delete-session.js.map +1 -0
- package/dist/tools/documentation/index.d.ts +28 -0
- package/dist/tools/documentation/index.js +63 -0
- package/dist/tools/documentation/index.js.map +1 -0
- package/dist/tools/documentation/reasoning-rag.d.ts +88 -0
- package/dist/tools/documentation/reasoning-rag.js +281 -0
- package/dist/tools/documentation/reasoning-rag.js.map +1 -0
- package/dist/tools/documentation/sentence-transformers-embeddings.d.ts +34 -0
- package/dist/tools/documentation/sentence-transformers-embeddings.js +111 -0
- package/dist/tools/documentation/sentence-transformers-embeddings.js.map +1 -0
- package/dist/tools/documentation/simple-pdf-indexer.d.ts +45 -0
- package/dist/tools/documentation/simple-pdf-indexer.js +402 -0
- package/dist/tools/documentation/simple-pdf-indexer.js.map +1 -0
- package/dist/tools/documentation/uploads/documents.json +1 -0
- package/dist/tools/generate-tests.d.ts +2 -0
- package/dist/tools/generate-tests.js +46 -0
- package/dist/tools/generate-tests.js.map +1 -0
- package/dist/tools/index.d.ts +16 -0
- package/dist/tools/index.js +112 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/install-wda.d.ts +1 -0
- package/dist/tools/install-wda.js +219 -0
- package/dist/tools/install-wda.js.map +1 -0
- package/dist/tools/interactions/activate-app.d.ts +2 -0
- package/dist/tools/interactions/activate-app.js +44 -0
- package/dist/tools/interactions/activate-app.js.map +1 -0
- package/dist/tools/interactions/click.d.ts +2 -0
- package/dist/tools/interactions/click.js +45 -0
- package/dist/tools/interactions/click.js.map +1 -0
- package/dist/tools/interactions/double-tap.d.ts +2 -0
- package/dist/tools/interactions/double-tap.js +81 -0
- package/dist/tools/interactions/double-tap.js.map +1 -0
- package/dist/tools/interactions/find.d.ts +13 -0
- package/dist/tools/interactions/find.js +55 -0
- package/dist/tools/interactions/find.js.map +1 -0
- package/dist/tools/interactions/get-text.d.ts +2 -0
- package/dist/tools/interactions/get-text.js +45 -0
- package/dist/tools/interactions/get-text.js.map +1 -0
- package/dist/tools/interactions/install-app.d.ts +2 -0
- package/dist/tools/interactions/install-app.js +43 -0
- package/dist/tools/interactions/install-app.js.map +1 -0
- package/dist/tools/interactions/list-apps.d.ts +2 -0
- package/dist/tools/interactions/list-apps.js +59 -0
- package/dist/tools/interactions/list-apps.js.map +1 -0
- package/dist/tools/interactions/screenshot.d.ts +2 -0
- package/dist/tools/interactions/screenshot.js +49 -0
- package/dist/tools/interactions/screenshot.js.map +1 -0
- package/dist/tools/interactions/set-value.d.ts +2 -0
- package/dist/tools/interactions/set-value.js +46 -0
- package/dist/tools/interactions/set-value.js.map +1 -0
- package/dist/tools/interactions/terminate-app.d.ts +2 -0
- package/dist/tools/interactions/terminate-app.js +45 -0
- package/dist/tools/interactions/terminate-app.js.map +1 -0
- package/dist/tools/interactions/uninstall-app.d.ts +2 -0
- package/dist/tools/interactions/uninstall-app.js +45 -0
- package/dist/tools/interactions/uninstall-app.js.map +1 -0
- package/dist/tools/locators.d.ts +1 -0
- package/dist/tools/locators.js +71 -0
- package/dist/tools/locators.js.map +1 -0
- package/dist/tools/scroll-to-element.d.ts +1 -0
- package/dist/tools/scroll-to-element.js +155 -0
- package/dist/tools/scroll-to-element.js.map +1 -0
- package/dist/tools/scroll.d.ts +1 -0
- package/dist/tools/scroll.js +91 -0
- package/dist/tools/scroll.js.map +1 -0
- package/dist/tools/select-device.d.ts +5 -0
- package/dist/tools/select-device.js +222 -0
- package/dist/tools/select-device.js.map +1 -0
- package/dist/tools/select-platform.d.ts +1 -0
- package/dist/tools/select-platform.js +195 -0
- package/dist/tools/select-platform.js.map +1 -0
- package/dist/tools/session-store.d.ts +7 -0
- package/dist/tools/session-store.js +64 -0
- package/dist/tools/session-store.js.map +1 -0
- package/dist/tools/setup-wda.d.ts +1 -0
- package/dist/tools/setup-wda.js +177 -0
- package/dist/tools/setup-wda.js.map +1 -0
- package/docs/CONTRIBUTING.md +424 -0
- package/eslint.config.js +49 -0
- package/examples/android-gmail.md +7 -0
- package/examples/android-todo-app.md +9 -0
- package/jest.config.js +23 -0
- package/package.json +71 -6
- package/scripts/setup-submodules-sparse.sh +53 -0
- package/scripts/update-submodules.sh +14 -0
- package/src/devicemanager/adb-manager.ts +164 -0
- package/src/devicemanager/ios-manager.ts +145 -0
- package/src/index.ts +47 -0
- package/src/locators/element-filter.ts +134 -0
- package/src/locators/generate-all-locators.ts +149 -0
- package/src/locators/locator-generation.ts +657 -0
- package/src/locators/logger.ts +11 -0
- package/src/locators/source-parsing.ts +149 -0
- package/src/resources/caps.json +697 -0
- package/src/resources/index.ts +7 -0
- package/src/resources/java/template.ts +83 -0
- package/src/resources/submodules/appium/.github/PULL_REQUEST_TEMPLATE.md +28 -0
- package/src/resources/submodules/appium/CHANGELOG.md +45 -0
- package/src/resources/submodules/appium/CONDUCT.md +48 -0
- package/src/resources/submodules/appium/GOVERNANCE.md +185 -0
- package/src/resources/submodules/appium/IDEAS.md +16 -0
- package/src/resources/submodules/appium/README.md +221 -0
- package/src/resources/submodules/appium/ROADMAP.md +30 -0
- package/src/resources/submodules/appium/SPONSORS.md +3 -0
- package/src/resources/submodules/appium/docs/README.md +6 -0
- package/src/resources/submodules/appium/docs/payout.md +35 -0
- package/src/resources/submodules/appium/packages/appium/CHANGELOG.md +1437 -0
- package/src/resources/submodules/appium/packages/appium/README.md +221 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/index.md +2 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-appiumconf2024.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-headspin-as-development-partner.md +47 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-lambdatest-as-strategic-partner.md +42 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/announcing-sponsorship-program.md +48 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/appium3.md +40 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/blog/posts/hello-world.md +15 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/contributing/index.md +150 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-docs.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-doctor-checks.md +141 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-drivers.md +860 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/build-plugins.md +514 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/config-system.md +451 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/index.md +18 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/developing/sensitive.md +49 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/clients.md +132 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/drivers.md +207 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/index.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/plugins.md +138 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/ecosystem/tools.md +83 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/branch-testing.md +57 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/caching.md +76 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/caps.md +275 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/config.md +98 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/context.md +44 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/event-timing.md +73 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/execute-methods.md +122 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/grid.md +166 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/headers.md +17 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/log-filters.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/managing-exts.md +87 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-1-to-2.md +368 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/migrating-2-to-3.md +464 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/security.md +89 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/settings.md +68 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/guides/tls.md +42 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/index.md +59 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/intro/appium.md +202 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/intro/clients.md +127 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/intro/drivers.md +188 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/intro/history.md +196 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/intro/index.md +39 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/index.md +29 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/install.md +50 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/next-steps.md +23 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/requirements.md +29 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-dotnet.md +105 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-java.md +23 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-js.md +75 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-py.md +60 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/test-rb.md +83 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/quickstart/uiauto2-driver.md +144 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/appium.md +394 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/bidi.md +70 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/index.md +30 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/jsonwp.md +214 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/mjsonwp.md +151 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/others.md +671 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/plugins.md +289 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/api/webdriver.md +1114 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/env-vars.md +31 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/extensions.md +239 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/index.md +35 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/server.md +76 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/cli/setup.md +76 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/reference/index.md +25 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/resources/index.md +28 -0
- package/src/resources/submodules/appium/packages/appium/docs/en/sponsors/index.md +64 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/index.md +2 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-appiumconf2024.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-headspin-as-development-partner.md +47 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/announcing-sponsorship-program.md +48 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/appium3.md +40 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/blog/posts/hello-world.md +15 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/contributing/index.md +158 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-docs.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-doctor-checks.md +141 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-drivers.md +866 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/build-plugins.md +520 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/config-system.md +468 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/index.md +18 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/developing/sensitive.md +49 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/clients.md +143 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/drivers.md +219 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/index.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/plugins.md +140 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/ecosystem/tools.md +87 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/branch-testing.md +57 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caching.md +78 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/caps.md +259 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/config.md +102 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/context.md +44 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/event-timing.md +75 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/execute-methods.md +142 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/grid.md +166 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/headers.md +17 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/log-filters.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/managing-exts.md +89 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-1-to-2.md +402 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/migrating-2-to-3.md +458 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/security.md +89 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/settings.md +70 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/guides/tls.md +43 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/index.md +55 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/intro/appium.md +191 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/intro/clients.md +139 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/intro/drivers.md +188 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/intro/history.md +196 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/intro/index.md +39 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/index.md +23 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/install.md +47 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/next-steps.md +19 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/requirements.md +29 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-dotnet.md +107 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-java.md +23 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-js.md +77 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-py.md +63 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/test-rb.md +85 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/quickstart/uiauto2-driver.md +148 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/appium.md +395 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/bidi.md +71 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/index.md +30 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/jsonwp.md +215 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/mjsonwp.md +152 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/others.md +672 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/plugins.md +291 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/api/webdriver.md +1114 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/env-vars.md +31 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/extensions.md +240 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/index.md +35 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/server.md +76 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/cli/setup.md +78 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/reference/index.md +25 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/resources/index.md +28 -0
- package/src/resources/submodules/appium/packages/appium/docs/ja/sponsors/index.md +61 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz-white.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-horiz.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo-white.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/appium-logo.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-dark.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-browserstack-light.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-dark.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-lambdatest-light.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/overrides/assets/images/sponsor-logo-sauce.png +0 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/index.md +2 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-appiumconf2024.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-browserstack-as-strategic-partner.md +46 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-headspin-as-development-partner.md +47 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-lambdatest-as-strategic-partner.md +41 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sauce-labs-as-strategic-partner.md +36 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/announcing-sponsorship-program.md +48 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/appium3.md +40 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/blog/posts/hello-world.md +15 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/contributing/index.md +132 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-docs.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-doctor-checks.md +141 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-drivers.md +866 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/build-plugins.md +520 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/config-system.md +468 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/index.md +18 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/developing/sensitive.md +49 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/clients.md +143 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/drivers.md +219 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/index.md +45 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/plugins.md +140 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/ecosystem/tools.md +87 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/branch-testing.md +57 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caching.md +78 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/caps.md +284 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/config.md +102 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/context.md +44 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/event-timing.md +75 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/execute-methods.md +142 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/grid.md +166 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/headers.md +17 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/log-filters.md +86 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/managing-exts.md +89 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-1-to-2.md +410 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/migrating-2-to-3.md +459 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/security.md +89 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/settings.md +70 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/guides/tls.md +43 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/index.md +54 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/intro/appium.md +200 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/intro/clients.md +139 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/intro/drivers.md +188 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/intro/history.md +196 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/intro/index.md +39 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/index.md +23 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/install.md +47 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/next-steps.md +19 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/requirements.md +21 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-dotnet.md +99 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-java.md +20 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-js.md +62 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-py.md +57 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/test-rb.md +80 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/quickstart/uiauto2-driver.md +148 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/appium.md +395 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/bidi.md +71 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/index.md +30 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/jsonwp.md +215 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/mjsonwp.md +152 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/others.md +672 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/plugins.md +291 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/api/webdriver.md +1114 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/env-vars.md +31 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/extensions.md +240 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/index.md +35 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/server.md +76 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/cli/setup.md +78 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/reference/index.md +25 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/resources/index.md +28 -0
- package/src/resources/submodules/appium/packages/appium/docs/zh/sponsors/index.md +61 -0
- package/src/resources/submodules/appium/packages/appium/types/manifest/README.md +30 -0
- package/src/resources/submodules/appium/packages/base-driver/CHANGELOG.md +1131 -0
- package/src/resources/submodules/appium/packages/base-driver/README.md +15 -0
- package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/errors.md +82 -0
- package/src/resources/submodules/appium/packages/base-driver/docs/mjsonwp/protocol-methods.md +182 -0
- package/src/resources/submodules/appium/packages/base-driver/static/appium.png +0 -0
- package/src/resources/submodules/appium/packages/base-plugin/CHANGELOG.md +672 -0
- package/src/resources/submodules/appium/packages/base-plugin/README.md +15 -0
- package/src/resources/submodules/appium/packages/docutils/CHANGELOG.md +948 -0
- package/src/resources/submodules/appium/packages/docutils/README.md +27 -0
- package/src/resources/submodules/appium/packages/driver-test-support/CHANGELOG.md +717 -0
- package/src/resources/submodules/appium/packages/driver-test-support/README.md +112 -0
- package/src/resources/submodules/appium/packages/eslint-config-appium-ts/CHANGELOG.md +168 -0
- package/src/resources/submodules/appium/packages/eslint-config-appium-ts/README.md +33 -0
- package/src/resources/submodules/appium/packages/execute-driver-plugin/CHANGELOG.md +603 -0
- package/src/resources/submodules/appium/packages/execute-driver-plugin/README.md +42 -0
- package/src/resources/submodules/appium/packages/fake-driver/CHANGELOG.md +545 -0
- package/src/resources/submodules/appium/packages/fake-driver/README.md +7 -0
- package/src/resources/submodules/appium/packages/fake-driver/lib/screen.png +0 -0
- package/src/resources/submodules/appium/packages/fake-plugin/CHANGELOG.md +683 -0
- package/src/resources/submodules/appium/packages/fake-plugin/README.md +7 -0
- package/src/resources/submodules/appium/packages/images-plugin/CHANGELOG.md +602 -0
- package/src/resources/submodules/appium/packages/images-plugin/README.md +27 -0
- package/src/resources/submodules/appium/packages/images-plugin/docs/find-by-image.md +65 -0
- package/src/resources/submodules/appium/packages/images-plugin/docs/image-comparison.md +203 -0
- package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/appstore.png +0 -0
- package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img1.png +0 -0
- package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2.png +0 -0
- package/src/resources/submodules/appium/packages/images-plugin/test/fixtures/img2_part.png +0 -0
- package/src/resources/submodules/appium/packages/logger/CHANGELOG.md +162 -0
- package/src/resources/submodules/appium/packages/logger/README.md +31 -0
- package/src/resources/submodules/appium/packages/opencv/CHANGELOG.md +384 -0
- package/src/resources/submodules/appium/packages/opencv/README.md +68 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/appium-diagram.jpg +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc1.png +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc2.png +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/cc_rotated.png +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/findwaldo.jpg +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/number5.png +0 -0
- package/src/resources/submodules/appium/packages/opencv/test/e2e/images/waldo.jpg +0 -0
- package/src/resources/submodules/appium/packages/plugin-test-support/CHANGELOG.md +539 -0
- package/src/resources/submodules/appium/packages/plugin-test-support/README.md +49 -0
- package/src/resources/submodules/appium/packages/relaxed-caps-plugin/CHANGELOG.md +154 -0
- package/src/resources/submodules/appium/packages/relaxed-caps-plugin/README.md +35 -0
- package/src/resources/submodules/appium/packages/schema/CHANGELOG.md +271 -0
- package/src/resources/submodules/appium/packages/schema/README.md +50 -0
- package/src/resources/submodules/appium/packages/storage-plugin/CHANGELOG.md +73 -0
- package/src/resources/submodules/appium/packages/storage-plugin/README.md +83 -0
- package/src/resources/submodules/appium/packages/strongbox/CHANGELOG.md +94 -0
- package/src/resources/submodules/appium/packages/strongbox/README.md +96 -0
- package/src/resources/submodules/appium/packages/support/CHANGELOG.md +1054 -0
- package/src/resources/submodules/appium/packages/support/README.md +161 -0
- package/src/resources/submodules/appium/packages/test-support/CHANGELOG.md +712 -0
- package/src/resources/submodules/appium/packages/test-support/README.md +61 -0
- package/src/resources/submodules/appium/packages/tsconfig/CHANGELOG.md +131 -0
- package/src/resources/submodules/appium/packages/tsconfig/README.md +19 -0
- package/src/resources/submodules/appium/packages/types/CHANGELOG.md +793 -0
- package/src/resources/submodules/appium/packages/types/README.md +21 -0
- package/src/resources/submodules/appium/packages/universal-xml-plugin/CHANGELOG.md +435 -0
- package/src/resources/submodules/appium/packages/universal-xml-plugin/README.md +53 -0
- package/src/resources/submodules/appium/renovate/README.md +63 -0
- package/src/resources/submodules/appium-uiautomator2-driver/CHANGELOG.md +1204 -0
- package/src/resources/submodules/appium-uiautomator2-driver/README.md +2077 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/actions.md +72 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/activity-startup.md +47 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/android-appbundle.md +69 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/android-mobile-gestures.md +352 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/bidi.md +50 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/capability-sets.md +136 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/scheduled-actions.md +155 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/uiautomator-uiselector.md +51 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/main.md +95 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen1.png +0 -0
- package/src/resources/submodules/appium-uiautomator2-driver/docs/unlock/screen2.png +0 -0
- package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/checkered-squares.png +0 -0
- package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/start-button.png +0 -0
- package/src/resources/submodules/appium-uiautomator2-driver/test/functional/assets/stop-button.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/.github/ISSUE_TEMPLATE.md +4 -0
- package/src/resources/submodules/appium-xcuitest-driver/CHANGELOG.md +2594 -0
- package/src/resources/submodules/appium-xcuitest-driver/README.md +55 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo-white.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-logo.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/assets/images/appium-plus-xctest.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/contributing.md +45 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints-wda.md +61 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/endpoints.md +98 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/keynote.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/on_my_iphone.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/assets/images/ios-xctest-file-movement/top_files.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/attach-to-running-wda.md +43 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/audio-capture.md +78 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/capability-sets.md +169 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/ci-setup.md +47 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/clipboard.md +47 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/elements-lookup-troubleshooting.md +158 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/file-transfer.md +147 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/gestures.md +52 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/hybrid.md +137 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/input-events.md +67 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/install-certificate.md +19 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/multiple-xcode-versions.md +37 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/parallel-tests.md +39 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-prebuilt-wda.md +135 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/run-preinstalled-wda.md +178 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/touch-id.md +33 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/troubleshooting.md +191 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/tvos.md +114 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/wda-custom-server.md +283 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/guides/wda-slowness.md +231 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/index.md +36 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/installation/index.md +137 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/overview.md +19 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/check-prov-prof.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/create-new-project.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/create-single-page.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/no-prov-prof.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/project-prov-prof.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/set-up-bundle.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/untrusted-dev.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-bundle-id.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-config.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-facebook-fail.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/assets/images/xcode-facebook-succeed.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/index.md +51 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-basic-auto.md +49 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-basic-manual.md +40 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-full-manual.md +50 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/prov-profile-generic-manual.md +49 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/preparation/real-device-config.md +100 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/assets/images/useXctestrunFile.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/bidi.md +75 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/capabilities.md +165 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/commands.md +490 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/element-attributes.md +27 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/execute-methods.md +2206 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/ios-predicate.md +196 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/locator-strategies.md +19 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/scripts.md +29 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/security-flags.md +22 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/server-args.md +16 -0
- package/src/resources/submodules/appium-xcuitest-driver/docs/reference/settings.md +49 -0
- package/src/resources/submodules/appium-xcuitest-driver/test/assets/TestApp-iphonesimulator.app/Default-568h@2x.png +0 -0
- package/src/resources/submodules/appium-xcuitest-driver/test/assets/test.png +0 -0
- package/src/schema.ts +5 -0
- package/src/scripts/simple-index-documentation.ts +93 -0
- package/src/scripts/simple-query-documentation.ts +61 -0
- package/src/server.ts +40 -0
- package/src/tests/README.md +83 -0
- package/src/tests/__mocks__/@appium/support.ts +31 -0
- package/src/tests/generate-all-locators.test.ts +179 -0
- package/src/tests/test-setup-wda.ts +247 -0
- package/src/tools/README.md +170 -0
- package/src/tools/answer-appium.ts +75 -0
- package/src/tools/boot-simulator.ts +87 -0
- package/src/tools/create-session.ts +270 -0
- package/src/tools/delete-session.ts +46 -0
- package/src/tools/documentation/index.ts +97 -0
- package/src/tools/documentation/reasoning-rag.ts +434 -0
- package/src/tools/documentation/sentence-transformers-embeddings.ts +142 -0
- package/src/tools/documentation/simple-pdf-indexer.ts +509 -0
- package/src/tools/documentation/uploads/documents.json +1 -0
- package/src/tools/generate-tests.ts +50 -0
- package/src/tools/index.ts +133 -0
- package/src/tools/install-wda.ts +277 -0
- package/src/tools/interactions/activate-app.ts +46 -0
- package/src/tools/interactions/click.ts +47 -0
- package/src/tools/interactions/double-tap.ts +87 -0
- package/src/tools/interactions/find.ts +58 -0
- package/src/tools/interactions/get-text.ts +47 -0
- package/src/tools/interactions/install-app.ts +45 -0
- package/src/tools/interactions/list-apps.ts +65 -0
- package/src/tools/interactions/screenshot.ts +56 -0
- package/src/tools/interactions/set-value.ts +48 -0
- package/src/tools/interactions/terminate-app.ts +47 -0
- package/src/tools/interactions/uninstall-app.ts +47 -0
- package/src/tools/locators.ts +83 -0
- package/src/tools/scroll-to-element.ts +188 -0
- package/src/tools/scroll.ts +97 -0
- package/src/tools/select-device.ts +298 -0
- package/src/tools/select-platform.ts +243 -0
- package/src/tools/session-store.ts +72 -0
- package/src/tools/setup-wda.ts +218 -0
- package/src/types/appium-ios-device.d.ts +8 -0
- package/src/types/appium-xcuitest-driver.d.ts +5 -0
- package/tsconfig.json +23 -0
- package/index.js +0 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
hide:
|
|
3
|
+
- toc
|
|
4
|
+
|
|
5
|
+
title: Write a Test (Ruby)
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
The [AppiumLib](https://github.com/appium/ruby_lib) and the [AppiumLibCore](https://github.com/appium/ruby_lib_core) (**recommended**) are official Appium client libraries in Ruby, which are available via gem under the [appium_lib](https://rubygems.org/gems/appium_lib) and the [appium_lib_core](https://rubygems.org/gems/appium_lib_core) package names. The appium_lib_core inherits from the Selenium Ruby Binding, and the appium_lib inherits from the appium_lib_core, so installing these libraries include the selenium binding. We recommend `appium_lib_core` if you need a less complex client-side solution. The `appium_lib` has some useful methods the core does not have, but for the cost of greater complexity and historical methods which may not work in the latest environment.
|
|
10
|
+
|
|
11
|
+
As the first step, let's initialize a Gemfile to manage the dependency:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
bundle init
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Then, you could add Appium Ruby Client dependency as below:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
bundle add appium_lib_core
|
|
21
|
+
# or
|
|
22
|
+
# bundle add appium_lib
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Test code example below uses `test-unit` module, thus please run:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
bundle add test-unit
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Once these steps has done, your `Gemfile` file should include:
|
|
32
|
+
|
|
33
|
+
```ruby title="Gemfile"
|
|
34
|
+
--8<-- "./sample-code/quickstarts/rb/Gemfile"
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The `appium_lib_core` is the main part as an Appium client.
|
|
38
|
+
`appium_lib` has various helper methods, but the driver instance was ordinary designed to be used as a global variable. It could causes an issue to handle the instance.
|
|
39
|
+
`appium_lib_core` does not have such a global variable.
|
|
40
|
+
|
|
41
|
+
This example is by the `appium_lib_core` with `test-unit` gem module.
|
|
42
|
+
Tes code in `appium_lib` should be similar.
|
|
43
|
+
|
|
44
|
+
```ruby title="test.rb"
|
|
45
|
+
--8<-- "./sample-code/quickstarts/rb/test.rb"
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
!!! note
|
|
49
|
+
|
|
50
|
+
It's not within the scope of this guide to give a complete run-down on the Ruby client
|
|
51
|
+
library or everything that's happening here, so we'll leave the code itself unexplained in detail for now.
|
|
52
|
+
|
|
53
|
+
- You may want to read up particularly on Appium [Capabilities](../guides/caps.md).
|
|
54
|
+
- [functional test code](https://github.com/appium/ruby_lib_core/tree/master/test/functional) in the appium_lib_core GitHub repository should help to find more working example.
|
|
55
|
+
- Documentation [appium_lib_core](https://www.rubydoc.info/github/appium/ruby_lib_core) and [appium_lib](https://www.rubydoc.info/github/appium/ruby_lib) also helps to find available methods.
|
|
56
|
+
|
|
57
|
+
!!! note
|
|
58
|
+
|
|
59
|
+
The sample code is available from [GitHub Appium repository](https://github.com/appium/appium/tree/master/packages/appium/sample-code/quickstarts/rb).
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
Basically, this code is doing the following:
|
|
63
|
+
|
|
64
|
+
1. Defining a set of "Capabilities" (parameters) to send to the Appium server so Appium knows what
|
|
65
|
+
kind of thing you want to automate.
|
|
66
|
+
1. Starting an Appium session on the built-in Android settings app.
|
|
67
|
+
1. Finding the "Apps" list item and clicking it.
|
|
68
|
+
1. Pausing for a moment purely for visual effect.
|
|
69
|
+
1. Ending the Appium session.
|
|
70
|
+
|
|
71
|
+
That's it! Let's give it a try. Before you run the test, make sure that you have an Appium server
|
|
72
|
+
running in another terminal session, otherwise you'll get an error about not being able to connect
|
|
73
|
+
to one. Then, you can execute the script:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Please run "bundle install" first if your environment has not run the installation command yet.
|
|
77
|
+
bundle exec ruby test.rb
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
If all goes well, you'll see the Settings app open up and navigate to the "Apps" view before the
|
|
81
|
+
app closes again.
|
|
82
|
+
|
|
83
|
+
Congratulations, you've started your Appium journey! Read on for some [next steps](./next-steps.md) to explore.
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Install the UiAutomator2 Driver
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
You can't do much with Appium unless you have a [driver](../intro/drivers.md), which is an
|
|
6
|
+
interface that allows Appium to automate a particular platform.
|
|
7
|
+
|
|
8
|
+
!!! info
|
|
9
|
+
|
|
10
|
+
For this quickstart guide, we're going to be automating an app on the Android platform, because
|
|
11
|
+
the system requirements for Android automation via Appium are the same as for Appium itself
|
|
12
|
+
(whereas the iOS driver, for example, requires you to be using macOS).
|
|
13
|
+
|
|
14
|
+
The driver we're going to use is called the [UiAutomator2
|
|
15
|
+
Driver](https://github.com/appium/appium-uiautomator2-driver). It's worth visiting that driver's
|
|
16
|
+
documentation and bookmarking it, because it will be an invaluable reference down the line.
|
|
17
|
+
|
|
18
|
+
## Set up Android automation requirements
|
|
19
|
+
|
|
20
|
+
According to the driver, in addition to a working Appium server, we also need to set up the following:
|
|
21
|
+
|
|
22
|
+
### Android SDK
|
|
23
|
+
|
|
24
|
+
- The easiest way to set up the Android SDK requirements is by downloading [Android Studio](https://developer.android.com/studio).
|
|
25
|
+
We need to use its SDK manager (_Settings -> Languages & Frameworks -> Android SDK_)
|
|
26
|
+
to download the following items:
|
|
27
|
+
- Android SDK Platform (select whichever Android platform we want to automate, for example, API level 30)
|
|
28
|
+
- Android SDK Platform-Tools
|
|
29
|
+
- If you wish, you can also download these items without Android Studio:
|
|
30
|
+
- Android SDK Platform can be downloaded using `sdkmanager` included in [Android command-line tools](https://developer.android.com/studio#command-line-tools-only)
|
|
31
|
+
- [Android SDK Platform-Tools](https://developer.android.com/tools/releases/platform-tools)
|
|
32
|
+
- Set up the `ANDROID_HOME` environment variable to point to the directory where the Android SDK is
|
|
33
|
+
installed. You can usually find the path to this directory in the Android Studio SDK manager. It
|
|
34
|
+
will contain the `platform-tools` and other directories.
|
|
35
|
+
|
|
36
|
+
### Java JDK
|
|
37
|
+
|
|
38
|
+
- Install the Java JDK (for the most recent Android API levels, JDK 9 is required, otherwise JDK
|
|
39
|
+
8 is required). You can download this from [Oracle](https://jdk.java.net/) or [Adoptium](https://adoptium.net/en-GB/temurin/releases/).
|
|
40
|
+
Make sure you get the JDK and not the JRE.
|
|
41
|
+
- Set up the `JAVA_HOME` environment variable to point to the JDK home directory. It will contain
|
|
42
|
+
the `bin`, `include`, and other directories.
|
|
43
|
+
|
|
44
|
+
### Prepare the Device
|
|
45
|
+
|
|
46
|
+
- If using an emulator, use Android Studio to create and launch an Android Virtual Device (AVD).
|
|
47
|
+
You may need to download the system images for the API level of the emulator you want to
|
|
48
|
+
create. Using the AVD creation wizard in Android Studio is generally the easiest way to do all of
|
|
49
|
+
this.
|
|
50
|
+
- If using a real device, you should [set it up for development and enable USB Debugging](https://developer.android.com/studio/debug/dev-options).
|
|
51
|
+
- With the emulator or device connected, you can run `adb devices` (via the binary located at
|
|
52
|
+
`$ANDROID_HOME/platform-tools/adb`) to verify that your device shows up as connected.
|
|
53
|
+
|
|
54
|
+
Once your device shows up as connected in `adb`, and you've verified that the environment variables
|
|
55
|
+
are set up correctly, you should be good to go! If you ran into problems with any of these steps,
|
|
56
|
+
refer to the driver documentation, or the various Android or Java documentation sites as necessary.
|
|
57
|
+
|
|
58
|
+
Also, congratulations: whether or not you intended to, you now have the Android developer toolchain
|
|
59
|
+
set up on your system, so you can get busy making Android apps if you want!
|
|
60
|
+
|
|
61
|
+
## Install the driver itself
|
|
62
|
+
|
|
63
|
+
### Standard Install
|
|
64
|
+
|
|
65
|
+
Like all Appium drivers, the UiAutomator2 driver is installed via the [Appium Extension CLI](../reference/cli/extensions.md).
|
|
66
|
+
Since UiAutomator2 is maintained by the core Appium team, it has an 'official' driver name
|
|
67
|
+
(`uiautomator2`), which makes the installation simpler.
|
|
68
|
+
|
|
69
|
+
Before installing, make sure your Appium server is _not_ running (if it is, quit it with _Ctrl-C_).
|
|
70
|
+
Then run the following command:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
appium driver install uiautomator2
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
It should produce output that looks something like:
|
|
77
|
+
|
|
78
|
+
```
|
|
79
|
+
Attempting to find and install driver 'uiautomator2'
|
|
80
|
+
✔ Installing 'uiautomator2' using NPM install spec 'appium-uiautomator2-driver'
|
|
81
|
+
Driver uiautomator2@2.0.5 successfully installed
|
|
82
|
+
- automationName: UiAutomator2
|
|
83
|
+
- platformNames: ["Android"]
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Note how the installation process specifies what platforms is the driver valid for (in this case,
|
|
87
|
+
`Android`), and what automation name (the `appium:automationName` [capability](../guides/caps.md))
|
|
88
|
+
must be used to select this driver for use during an Appium session (in this case, `UiAutomator2`).
|
|
89
|
+
|
|
90
|
+
!!! note
|
|
91
|
+
|
|
92
|
+
In this quickstart we have used the [Extension CLI](../reference/cli/extensions.md) to install the
|
|
93
|
+
UiAutomator2 driver, but if you are incorporating Appium into a Node.js project, you might
|
|
94
|
+
prefer to use `npm` to manage Appium and its connected drivers. To learn more about this
|
|
95
|
+
technique, visit the guide on [managing Appium extensions](../guides/managing-exts.md).
|
|
96
|
+
|
|
97
|
+
### Batch Install
|
|
98
|
+
|
|
99
|
+
You may want to use Appium with more than one driver. One way to accomplish this is to run
|
|
100
|
+
`appium driver install <driver-name>` for each individual driver, but you can also install multiple
|
|
101
|
+
drivers in one go:
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
appium setup
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Running this will install Appium's mobile-specific drivers: UiAutomator2, [XCUITest](https://appium.github.io/appium-xcuitest-driver/)
|
|
108
|
+
(only if running macOS), and [Espresso](https://github.com/appium/appium-espresso-driver).
|
|
109
|
+
|
|
110
|
+
You can also use this command to batch install drivers for desktop applications or desktop browsers.
|
|
111
|
+
For more details on this, refer to the [Setup command documentation](../reference/cli/setup.md).
|
|
112
|
+
|
|
113
|
+
### Validating the Install
|
|
114
|
+
|
|
115
|
+
The UiAutomator2 driver, like all official Appium drivers, comes with the Appium Doctor tool, which
|
|
116
|
+
allows validating whether all prerequisites have been set up correctly:
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
appium driver doctor uiautomator2
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
This guide has focused on essential requirements, so Appium Doctor may suggest one or more optional
|
|
123
|
+
fixes. But if you see `0 required fixes needed`, that means everything is set up!
|
|
124
|
+
|
|
125
|
+
Now, start the Appium server again (run `appium`), and you should see that the newly-installed
|
|
126
|
+
driver is listed as available:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
[Appium] Available drivers:
|
|
130
|
+
[Appium] - uiautomator2@2.0.5 (automationName 'UiAutomator2')
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
With the Android setup complete and the UiAutomator2 driver installed, you're ready to write your
|
|
134
|
+
first test! Now select your preferred language and give it a shot:
|
|
135
|
+
|
|
136
|
+
<div class="grid cards" markdown>
|
|
137
|
+
|
|
138
|
+
- :material-language-javascript: [__JavaScript__](./test-js.md)
|
|
139
|
+
- :material-language-java: [__Java__](./test-java.md)
|
|
140
|
+
- :material-language-python: [__Python__](./test-py.md)
|
|
141
|
+
- :material-language-ruby: [__Ruby__](./test-rb.md)
|
|
142
|
+
- :material-dot-net: [__.NET C#__](./test-dotnet.md)
|
|
143
|
+
|
|
144
|
+
</div>
|
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Appium Protocol
|
|
3
|
+
---
|
|
4
|
+
<style>
|
|
5
|
+
ul[data-md-component="toc"] .md-nav {
|
|
6
|
+
display: none;
|
|
7
|
+
}
|
|
8
|
+
</style>
|
|
9
|
+
|
|
10
|
+
The following is a list of endpoints supported in Appium, that are defined in the Appium extension
|
|
11
|
+
of the W3C WebDriver protocol.
|
|
12
|
+
|
|
13
|
+
### getAppiumSessions
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
GET /appium/sessions
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Retrieves information about all active server sessions.
|
|
20
|
+
|
|
21
|
+
!!! info
|
|
22
|
+
|
|
23
|
+
The `session_discovery` [insecure feature](../../guides/security.md) must be enabled to use this endpoint.
|
|
24
|
+
|
|
25
|
+
#### Response
|
|
26
|
+
|
|
27
|
+
`TimestampedMultiSessionData[]` - an array of session data objects. Each object has the following properties:
|
|
28
|
+
|
|
29
|
+
|Name|Description|Type|
|
|
30
|
+
|--|--|--|
|
|
31
|
+
|`capabilities`|Session capabilities|object|
|
|
32
|
+
|`created`|Session creation time (in milliseconds) as a Unix timestamp|number|
|
|
33
|
+
|`id`|Session ID|string|
|
|
34
|
+
|
|
35
|
+
### getAppiumSessionCapabilities
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
GET /session/:sessionId/appium/capabilities
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Retrieves the [session capabilities](../../guides/caps.md).
|
|
42
|
+
|
|
43
|
+
#### Response
|
|
44
|
+
|
|
45
|
+
`SessionCapabilities` - an object with the following properties:
|
|
46
|
+
|
|
47
|
+
|Name|Description|Type|
|
|
48
|
+
|--|--|--|
|
|
49
|
+
|`capabilities`|Session capabilities|object|
|
|
50
|
+
|
|
51
|
+
### getSettings
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
GET /session/:sessionId/appium/settings
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Retrieves the [current session settings](../../guides/settings.md).
|
|
58
|
+
|
|
59
|
+
#### Response
|
|
60
|
+
|
|
61
|
+
`Settings` - an object containing setting names and their values
|
|
62
|
+
|
|
63
|
+
### updateSettings
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
POST /session/:sessionId/appium/settings
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Updates the specified session settings. Any other previously set settings will remain unchanged.
|
|
70
|
+
|
|
71
|
+
#### Parameters
|
|
72
|
+
|
|
73
|
+
|Name|Description|Type|
|
|
74
|
+
|--|--|--|
|
|
75
|
+
|`settings`|Object containing the names and values of the settings to be updated|object|
|
|
76
|
+
|
|
77
|
+
#### Response
|
|
78
|
+
|
|
79
|
+
`null`
|
|
80
|
+
|
|
81
|
+
### listCommands
|
|
82
|
+
|
|
83
|
+
```
|
|
84
|
+
GET /session/:sessionId/appium/commands
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Retrieves the URL endpoints and WebDriver BiDi commands supported in the current session.
|
|
88
|
+
|
|
89
|
+
#### Response
|
|
90
|
+
|
|
91
|
+
`ListCommandsResponse` - an object containing all supported endpoints and BiDi commands, grouped by
|
|
92
|
+
their origin (base Appium, driver-specific, or plugin-specific). Refer to [the type definition file](https://github.com/appium/appium/blob/master/packages/types/lib/command.ts)
|
|
93
|
+
for a detailed structure of this object.
|
|
94
|
+
|
|
95
|
+
### listExtensions
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
GET /session/:sessionId/appium/extensions
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Retrieves the [execute methods](../../guides/execute-methods.md) supported in the current session.
|
|
102
|
+
|
|
103
|
+
#### Response
|
|
104
|
+
|
|
105
|
+
`ListExtensionsResponse` - an object containing all supported execute methods, grouped by their
|
|
106
|
+
origin (driver-specific or plugin-specific). Refer to [the type definition file](https://github.com/appium/appium/blob/master/packages/types/lib/command.ts)
|
|
107
|
+
for a detailed structure of this object.
|
|
108
|
+
|
|
109
|
+
### getLogEvents
|
|
110
|
+
|
|
111
|
+
```
|
|
112
|
+
POST /session/:sessionId/appium/events
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Retrieves events that have occurred in the current session. By default, only driver command
|
|
116
|
+
executions are recorded in the log, but drivers or plugins may define additional event types.
|
|
117
|
+
Clients can log events by using the [`logCustomEvent`](#logcustomevent) endpoint.
|
|
118
|
+
|
|
119
|
+
#### Parameters
|
|
120
|
+
|
|
121
|
+
|Name|Description|Type|
|
|
122
|
+
|--|--|--|
|
|
123
|
+
|`type?`|One or more types to filter the returned events|string or array<string>|
|
|
124
|
+
|
|
125
|
+
#### Response
|
|
126
|
+
|
|
127
|
+
`EventHistory` - an object whose keys correspond to the types of logged events. Event types can be
|
|
128
|
+
grouped into three categories, as shown by the following example response:
|
|
129
|
+
|
|
130
|
+
```json
|
|
131
|
+
{
|
|
132
|
+
"commands": [
|
|
133
|
+
{ "cmd": "getStatus", "startTime": 1756887645447, "endTime": 1756887645454 }
|
|
134
|
+
],
|
|
135
|
+
"driverevent": [1756887645454],
|
|
136
|
+
"namespace:event": [1756887645454]
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
* The `commands` key is always included in the endpoint response. Its value is an array of objects,
|
|
141
|
+
where each object includes 3 parameters:
|
|
142
|
+
* `cmd`: name of the executed command
|
|
143
|
+
* `startTime`: the command execution start time (in milliseconds), as a Unix timestamp
|
|
144
|
+
* `endTime`: the command execution end time (in milliseconds), as a Unix timestamp
|
|
145
|
+
* Other non-namespaced keys are specific to driver/plugin implementations. Their value is an array
|
|
146
|
+
of event times (in milliseconds), as Unix timestamps.
|
|
147
|
+
* Namespaced keys can be added using the `logCustomEvent` endpoint, but may also be provided by
|
|
148
|
+
drivers/plugins. Their value is an array of event times (in milliseconds), as Unix timestamps.
|
|
149
|
+
|
|
150
|
+
### logCustomEvent
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
POST /session/:sessionId/appium/log_event
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Logs a custom event, which can be retrieved using the [`getLogEvents`](#getlogevents) endpoint.
|
|
157
|
+
|
|
158
|
+
#### Parameters
|
|
159
|
+
|
|
160
|
+
|Name|Description|Type|
|
|
161
|
+
|--|--|--|
|
|
162
|
+
|`vendor`|Name of the namespace (vendor) used to prefix the event|string|
|
|
163
|
+
|`event`|Name of the event|string|
|
|
164
|
+
|
|
165
|
+
#### Response
|
|
166
|
+
|
|
167
|
+
`null`
|
|
168
|
+
|
|
169
|
+
### getDeviceTime
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
POST /session/:sessionId/appium/device/system_time
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Retrieves the current system time of the device under test.
|
|
176
|
+
|
|
177
|
+
#### Parameters
|
|
178
|
+
|
|
179
|
+
|Name|Description|Type|Default|
|
|
180
|
+
|--|--|--|--|
|
|
181
|
+
|`format?`|Format to use for the returned timestamp|string|`YYYY-MM-DDTHH:mm:ssZ`|
|
|
182
|
+
|
|
183
|
+
#### Response
|
|
184
|
+
|
|
185
|
+
`string` - the device time
|
|
186
|
+
|
|
187
|
+
### activateApp
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
POST /session/:sessionId/appium/device/activate_app
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Activates an app on the device under test.
|
|
194
|
+
|
|
195
|
+
#### Parameters
|
|
196
|
+
|
|
197
|
+
|Name|Description|Type|
|
|
198
|
+
|--|--|--|
|
|
199
|
+
|`appId` or `bundleId`|App identifier such as Android app package or iOS bundle ID|string|
|
|
200
|
+
|`options?`|Driver-specific launch options|unknown|
|
|
201
|
+
|
|
202
|
+
#### Response
|
|
203
|
+
|
|
204
|
+
`void`
|
|
205
|
+
|
|
206
|
+
### terminateApp
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
POST /session/:sessionId/appium/device/terminate_app
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
Terminates an app on the device under test.
|
|
213
|
+
|
|
214
|
+
#### Parameters
|
|
215
|
+
|
|
216
|
+
|Name|Description|Type|
|
|
217
|
+
|--|--|--|
|
|
218
|
+
|`appId` or `bundleId`|App identifier such as Android app package or iOS bundle ID|string|
|
|
219
|
+
|`options?`|Driver-specific termination options|unknown|
|
|
220
|
+
|
|
221
|
+
#### Response
|
|
222
|
+
|
|
223
|
+
`void`
|
|
224
|
+
|
|
225
|
+
### queryAppState
|
|
226
|
+
|
|
227
|
+
```
|
|
228
|
+
POST /session/:sessionId/appium/device/app_state
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
Retrieves the state of an app on the device under test.
|
|
232
|
+
|
|
233
|
+
#### Parameters
|
|
234
|
+
|
|
235
|
+
|Name|Description|Type|
|
|
236
|
+
|--|--|--|
|
|
237
|
+
|`appId` or `bundleId`|App identifier such as Android app package or iOS bundle ID|string|
|
|
238
|
+
|
|
239
|
+
#### Response
|
|
240
|
+
|
|
241
|
+
`number` - an integer value indicating the app state:
|
|
242
|
+
|
|
243
|
+
|Number|App State|
|
|
244
|
+
|--|--|
|
|
245
|
+
|`0`|Not installed|
|
|
246
|
+
|`1`|Not running|
|
|
247
|
+
|`2`|Running in background suspended|
|
|
248
|
+
|`3`|Running in background|
|
|
249
|
+
|`4`|Running in foreground|
|
|
250
|
+
|
|
251
|
+
### installApp
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
POST /session/:sessionId/appium/device/install_app
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
Installs an app on the device under test.
|
|
258
|
+
|
|
259
|
+
#### Parameters
|
|
260
|
+
|
|
261
|
+
|Name|Description|Type|
|
|
262
|
+
|--|--|--|
|
|
263
|
+
|`appPath`|Absolute local filepath or URL to an app file|string|
|
|
264
|
+
|`options?`|Driver-specific install options|unknown|
|
|
265
|
+
|
|
266
|
+
#### Response
|
|
267
|
+
|
|
268
|
+
`void`
|
|
269
|
+
|
|
270
|
+
### removeApp
|
|
271
|
+
|
|
272
|
+
```
|
|
273
|
+
POST /session/:sessionId/appium/device/remove_app
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
Uninstalls an app from the device under test.
|
|
277
|
+
|
|
278
|
+
#### Parameters
|
|
279
|
+
|
|
280
|
+
|Name|Description|Type|
|
|
281
|
+
|--|--|--|
|
|
282
|
+
|`appId` or `bundleId`|App identifier such as Android app package or iOS bundle ID|string|
|
|
283
|
+
|`options?`|Driver-specific uninstall options|unknown|
|
|
284
|
+
|
|
285
|
+
#### Response
|
|
286
|
+
|
|
287
|
+
`boolean` - `true` if uninstall was successful, otherwise `false`
|
|
288
|
+
|
|
289
|
+
### isAppInstalled
|
|
290
|
+
|
|
291
|
+
```
|
|
292
|
+
POST /session/:sessionId/appium/device/app_installed
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
Determines if an app is installed on the device under test.
|
|
296
|
+
|
|
297
|
+
#### Parameters
|
|
298
|
+
|
|
299
|
+
|Name|Description|Type|
|
|
300
|
+
|--|--|--|
|
|
301
|
+
|`appId` or `bundleId`|App identifier such as Android app package or iOS bundle ID|string|
|
|
302
|
+
|
|
303
|
+
#### Response
|
|
304
|
+
|
|
305
|
+
`boolean` - `true` if app is installed, otherwise `false`
|
|
306
|
+
|
|
307
|
+
### hideKeyboard
|
|
308
|
+
|
|
309
|
+
```
|
|
310
|
+
POST /session/:sessionId/appium/device/hide_keyboard
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
Attempts to hide the virtual keyboard on the device under test.
|
|
314
|
+
|
|
315
|
+
#### Parameters
|
|
316
|
+
|
|
317
|
+
|Name|Description|Type|
|
|
318
|
+
|--|--|--|
|
|
319
|
+
|`key?`|Text of a key to use to hide the keyboard|string|
|
|
320
|
+
|`keyCode?`|Key code to trigger to hide the keyboard|string|
|
|
321
|
+
|`keyName?`|Name of a key to use to hide the keyboard|string|
|
|
322
|
+
|`strategy?`|Driver-specific name of a hiding strategy to follow|string|
|
|
323
|
+
|
|
324
|
+
#### Response
|
|
325
|
+
|
|
326
|
+
`boolean` - `true` if the operation was successful, otherwise `false`. Note that some platforms
|
|
327
|
+
may never return a `false` value.
|
|
328
|
+
|
|
329
|
+
### isKeyboardShown
|
|
330
|
+
|
|
331
|
+
```
|
|
332
|
+
GET /session/:sessionId/appium/device/is_keyboard_shown
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
Determines if the virtual keyboard is shown on the device under test.
|
|
336
|
+
|
|
337
|
+
#### Response
|
|
338
|
+
|
|
339
|
+
`boolean` - `true` if the keyboard is shown, otherwise `false`
|
|
340
|
+
|
|
341
|
+
### pushFile
|
|
342
|
+
|
|
343
|
+
```
|
|
344
|
+
POST /session/:sessionId/appium/device/push_file
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
Pushes data to a file on the device under test.
|
|
348
|
+
|
|
349
|
+
#### Parameters
|
|
350
|
+
|
|
351
|
+
|Name|Description|Type|
|
|
352
|
+
|--|--|--|
|
|
353
|
+
|`data`|Base64-encoded data to be written to the file|string|
|
|
354
|
+
|`path`|Remote path on the device to create the file at|string|
|
|
355
|
+
|
|
356
|
+
#### Response
|
|
357
|
+
|
|
358
|
+
`void`
|
|
359
|
+
|
|
360
|
+
### pullFile
|
|
361
|
+
|
|
362
|
+
```
|
|
363
|
+
POST /session/:sessionId/appium/device/pull_file
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
Retrieves data from a file on the device under test.
|
|
367
|
+
|
|
368
|
+
#### Parameters
|
|
369
|
+
|
|
370
|
+
|Name|Description|Type|
|
|
371
|
+
|--|--|--|
|
|
372
|
+
|`path`|Remote path of the file on the device|string|
|
|
373
|
+
|
|
374
|
+
#### Response
|
|
375
|
+
|
|
376
|
+
`string` - the Base64-encoded contents of the file
|
|
377
|
+
|
|
378
|
+
### pullFolder
|
|
379
|
+
|
|
380
|
+
```
|
|
381
|
+
POST /session/:sessionId/appium/device/pull_folder
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
Retrieves data from a directory on the device under test.
|
|
385
|
+
|
|
386
|
+
#### Parameters
|
|
387
|
+
|
|
388
|
+
|Name|Description|Type|
|
|
389
|
+
|--|--|--|
|
|
390
|
+
|`path`|Remote path of the directory on the device|string|
|
|
391
|
+
|
|
392
|
+
#### Response
|
|
393
|
+
|
|
394
|
+
`string` - the Base64-encoded zip file of the directory contents
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: WebDriver BiDi Protocol
|
|
3
|
+
---
|
|
4
|
+
<style>
|
|
5
|
+
ul[data-md-component="toc"] .md-nav {
|
|
6
|
+
display: none;
|
|
7
|
+
}
|
|
8
|
+
</style>
|
|
9
|
+
|
|
10
|
+
The following is a list of [W3C WebDriver BiDi protocol](https://w3c.github.io/webdriver-bidi/)
|
|
11
|
+
commands supported in Appium.
|
|
12
|
+
|
|
13
|
+
Unlike other protocols that specify URL endpoints, the WebDriver BiDi protocol specifies commands
|
|
14
|
+
sent as a websocket event, that both drivers and clients can emit or listen to.
|
|
15
|
+
|
|
16
|
+
### bidiStatus
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
session.status
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
> WebDriver BiDi documentation: [session.status](https://w3c.github.io/webdriver-bidi/#command-session-status)
|
|
23
|
+
|
|
24
|
+
Retrieves the current status of the Appium server.
|
|
25
|
+
|
|
26
|
+
#### Response
|
|
27
|
+
|
|
28
|
+
[`GetStatusResult`](./webdriver.md#response_2)
|
|
29
|
+
|
|
30
|
+
### bidiSubscribe
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
session.subscribe
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
> WebDriver BiDi documentation: [session.subscribe](https://w3c.github.io/webdriver-bidi/#command-session-subscribe)
|
|
37
|
+
|
|
38
|
+
Subscribes to one or more BiDi events.
|
|
39
|
+
|
|
40
|
+
#### Parameters
|
|
41
|
+
|
|
42
|
+
|Name|Description|Type|Default|
|
|
43
|
+
|--|--|--|--|
|
|
44
|
+
|`contexts?`|Contexts in which to subscribe to the specified events. By default, the global context scope is applied.|string[]|`['']`|
|
|
45
|
+
|`events`|Names of events to subscribe to|string[]||
|
|
46
|
+
|
|
47
|
+
#### Response
|
|
48
|
+
|
|
49
|
+
`null`
|
|
50
|
+
|
|
51
|
+
### bidiUnsubscribe
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
session.unsubscribe
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
> WebDriver BiDi documentation: [session.unsubscribe](https://w3c.github.io/webdriver-bidi/#command-session-unsubscribe)
|
|
58
|
+
|
|
59
|
+
Unsubscribes from one or more BiDi events.
|
|
60
|
+
|
|
61
|
+
#### Parameters
|
|
62
|
+
|
|
63
|
+
|Name|Description|Type|Default|
|
|
64
|
+
|--|--|--|--|
|
|
65
|
+
|`contexts?`|Contexts in which to unsubscribe from the specified events. By default, the global scope is applied.|string[]|`['']`|
|
|
66
|
+
|`events`|Names of events to unsubscribe from|string[]||
|
|
67
|
+
|
|
68
|
+
#### Response
|
|
69
|
+
|
|
70
|
+
`null`
|