用途:该技能用于编写 Android 与 iOS 原生或混合移动应用的自动化测试,支持元素定位、手势操作、设备交互,以及将测试集成到 Jenkins、GitHub Actions 等 CI/CD 流程。
主要能力:支持通过 accessibility ID、ID、XPath、class name 定位元素;执行点击、滑动、滚动等手势;为不同设备与平台配置 desired capabilities;在真机或模拟器上并行执行并生成报告。
使用方式:先安装 Appium Server、驱动(Android 用 UiAutomator2,iOS 用 XCUITest)及语言绑定;再定义 capabilities(如 platformName、deviceName、app、automationName、noReset);然后编写测试脚本定位元素、执行操作并断言结果;最后在 CI 中运行。示例中 Python 使用 webdriver.Remote("http://localhost:4723/wd/hub", desired_caps),Java 使用 AndroidDriver 与 WebDriverWait。
适用场景:移动应用 UI 测试、跨平台回归测试、多设备与多系统版本矩阵测试。
限制与建议:优先使用 accessibility ID 或 resource ID,避免脆弱的 XPath;使用显式等待与重试逻辑,失败时截图并记录日志;敏感信息(应用路径、凭据)存入环境变量;手势操作使用 Appium 内置 API。官方文档见 https://appium.io/docs/en/latest/,GitHub 见 https://github.com/appium/appium。