如何在模拟器和实际设备上的 CI 中运行不同的方案



我们正在使用calabash-android来针对我们的Android应用程序运行黄瓜场景。 某些方案需要物理设备,而其他方案仅在模拟器上运行良好。 我们如何配置构建,以便标记为@requires_device的方案在物理设备上运行,但不在模拟器上运行?

如果你使用 Jenkins 作为你的 CI 服务器,下面是我们让 Calabash 在真实设备上运行的步骤:

  • 创建一个从属计算机,这是一台本地机器
  • 将您的设备连接到此从属机器(多个设备也应该可以工作)
  • 构建你的 Jenkins 来运行一个在从属机器上执行 Calabash 的作业:
    ADB_DEVICE_ARG=device_id;calabash-android ... 可以从adb devices命令中检索device_id

由于模拟器也有device_id,这种方法允许您选择模拟器或真实设备来运行所有测试。在某些设备上运行选择性测试更加棘手,可能需要运行单独的calabash-android命令。

相关内容

  • 没有找到相关文章

最新更新