You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否不上传测试套件,本地运行WebdriverIO测试对接AWS Device Farm?

本地对接AWS Device Farm运行Appium/WebdriverIO测试可行方案

答案是:完全支持从本地直接对接AWS Device Farm的设备运行Appium/WebdriverIO测试,不需要必须上传ZIP测试包,也能避开仅针对Selenium的方案限制。下面是具体的实现方法:

核心逻辑

AWS Device Farm提供了远程Appium服务端点,你只需要修改WebdriverIO的配置,把测试请求指向这个端点,就能直接操控Device Farm上的真实设备或模拟器执行测试。

具体操作步骤

  1. 获取Device Farm远程Appium端点信息

    • 登录AWS控制台进入Device Farm,创建一个移动端测试项目
    • 选择「Create a run」,挑选你要使用的设备池,在「Configure test」步骤里选「Appium Node.js」(这里不用上传测试代码,只是为了生成远程访问端点)
    • 到「Review and start run」页面,找到「Remote access」区域,里面会有Appium服务器的URL、AWS密钥等关键信息
  2. 配置WebdriverIO的Device Farm专属配置文件

    • 复制一份现有wdio配置,比如命名为wdio.devicefarm.conf.js,修改以下核心配置项:
      • hostname:填Device Farm提供的远程端点主机地址
      • port:固定为443
      • path:设为/wd/hub
      • protocol:用https
      • capabilities:根据Device Farm设备池的设备信息,配置platformName、platformVersion、deviceName;另外必须指定app参数——先把你的React Native应用包(.apk或.ipa)上传到Device Farm,拿到应用ARN后填在这里
      • auth:注入AWS的Access Key和Secret Key,推荐用环境变量:
        auth: {
          user: process.env.AWS_ACCESS_KEY_ID,
          pass: process.env.AWS_SECRET_ACCESS_KEY
        }
        
  3. 本地启动测试

    • 确保本地测试依赖都已安装(WebdriverIO、Appium客户端等)
    • 运行命令:npx wdio run wdio.devicefarm.conf.js

重要注意事项

  • 应用包必须先上传:要先把React Native构建好的APK/IPA传到Device Farm,获取应用ARN,否则测试找不到要安装的应用
  • AWS权限要到位:你的AWS账号需要有Device Farm的访问权限,Access Key得有devicefarm:CreateTestGridUrl等相关权限
  • 设备能力要匹配:capabilities里的设备信息要和Device Farm设备池中的设备一致,不然会出现设备不兼容的错误
  • 日志调试:测试过程中可以在AWS控制台看实时日志,也可以通过WebdriverIO的日志配置在本地输出调试信息

内容的提问来源于stack exchange,提问作者Charlie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 22:25:41