ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Appium WebDriver 移动自动化:5 步跑通第一个测试

Appium WebDriver 移动自动化:5 步跑通第一个测试 Appium WebDriver 移动自动化5 步跑通第一个测试【免费下载链接】appiumCross-platform automation framework for all kinds of apps, built on top of the W3C WebDriver protocol项目地址: https://gitcode.com/GitHub_Trending/ap/appiumAppium 是基于 W3C WebDriver 协议的开源自动化框架不修改、不重编译目标应用装上对应平台的 driver 后就能用任意客户端语言的脚本驱动 Android、iOS 和桌面应用。适合准备动手跑通跨平台移动测试自动化的开发者。项目速写Appium 3.7.0Apache-2.0 协议TypeScript 实现服务端要求 Node^20.19.0 || ^22.12.0 || 24.0.0、npm 10monorepolerna workspacespackages/ 下共 23 个子包服务端核心 packages/appium/、协议基础appium/base-driver10.8.0、共享类型、文档工具链等官方文档提供 en/ja/zh 三语packages/appium/docs/示例代码含 JS/Python/Ruby 三套 quickstart 和两个示例 AppApiDemos-debug.apk、TestApp.app.zip核心能力装一个 driverdoctor 一次验环境核心服务器本身不能自动化任何平台平台能力全部来自独立安装的 driver安装、更新、卸载都走 Extension CLIappium driver install uiautomator2 appium driver list --installed appium driver doctor uiautomator2已安装的 driver 在服务器启动时默认全部加载启动日志会列出可用 driver 和客户端连接 URL。会话管理、路由与 JSONWP 到 W3C 的转换实现在 packages/base-driver/。跑第一个示例三套 quickstart 任选语言官方客户端覆盖 Java、Python、Ruby、.NET C#。packages/appium/sample-code/quickstarts/ 下三套示例做同一件事连接 Android 设置应用、XPath 定位//*[textApps]、点击后关闭会话。JS 版仅 28 行webdriverio 客户端Python 版用 unittest 组织Ruby 版结构类似。混合 App 场景下xcuitest 和 uiautomator2 两个 driver 能在同一脚本里切换原生页面与 WebView不需要换框架。插件即扩展图像识别为例插件不改服务端代码appium plugin install name安装、启动时--use-pluginsname显式启用。monorepo 内自带几个可直接参考的完整实现packages/images-plugin/模板匹配定位元素、截图对比XPath 不稳定时的备选手段packages/opencv/为上述插件封装 OpenCV 底层调用另有 storage-plugin会话数据持久化、relaxed-caps-plugincapabilities 宽松校验、universal-xml-pluginsource 与 XPath 转换没有设备用 fake-driver 验链路packages/fake-driver/ 是一个假 driver实现了元素查找、上下文切换、alert 等命令仓库自身的 e2e 测试就靠它跑完整会话流程。手头没有真机或模拟器时这是验证服务器 客户端链路是否通的最短路径。最短上手路径git clone https://gitcode.com/GitHub_Trending/ap/appium—— 仓库是源码 monorepo若不改服务端代码直接npm i -g appium更省事准备 Android 工具链安装 Android SDK 与 JDK设置ANDROID_HOME、JAVA_HOME用adb devices确认真机或 AVD 已连接appium driver install uiautomator2再跑appium driver doctor uiautomator2确认输出0 required fixes needed启动服务器appium默认监听 0.0.0.0:4723运行示例packages/appium/sample-code/quickstarts/js/test.js默认连 localhost:4723无需改动即可node test.js执行真实场景移动端 CI 回归uiautomator2 driver Java 或 Python 客户端 → 把 quickstart 风格的用例放进流水线拿到逐条通过/失败结果协议模型与 Selenium 网页自动化一致混合 App 端到端测试xcuitest/uiautomator2 driver → 同一脚本在原生页面和 App 内 H5 之间切换不必维护两套自动化方案UI 视觉校验images-plugin opencv → 当前截图与模板图比对、按图定位元素作为文案属性变更时定位失效的兜底手段常见问题服务器在跑但会话创建失败核心默认不带任何 driver → 先appium driver install name用appium driver list --installed核对adb devices为空或显示 unauthorized真机未开 USB 调试或 AVD 未启动 → 处理后重查确认ANDROID_HOME指向含 platform-tools 的目录从 Appium 1 升级后报错先npm uninstall -g appium彻底移除旧版再按 docs/guides/migrating-1-to-2.md 迁移npm i -g appium报 engine 不满足Node 必须落在^20.19.0 || ^22.12.0 || 24.0.0区间建议用 LTSiOS 自动化装不上xcuitest driver 依赖 macOS 与 Xcode 工具链其他系统上只能先跑 Android 链路下一步通读 packages/appium/docs/en/quickstart/zh/ja 版同在 docs 下从 install.md 读到 test-js.md用 fake-driver 在无设备环境跑一遍完整会话确认客户端配置无误后再接真机【免费下载链接】appiumCross-platform automation framework for all kinds of apps, built on top of the W3C WebDriver protocol项目地址: https://gitcode.com/GitHub_Trending/ap/appium创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表