Appium - 并行执行(网格)

Appium - Parallel Execution (Grid)

有什么方法可以像 selenium 网格一样在 appium 中进行 运行 并行测试吗? 我们如何在appium中设置不同的节点?[​​=10=]

我们可以使用 TestNg 来实现,也可以使用多线程来实现。

IN selenium Grid 需要 运行 一个集线器和不同的节点,但在这种情况下,您 运行 在不同的 2 端口

多个 Appium 服务器

问题是 appium 仅使用 iosSimulator 或 Genymotion VM,并不是真正设计为 运行 在一台机器上并行。但是,您可以使用自己的 appium 运行ning 实例设置多个虚拟机(我觉得这会很慢,但理论上是一种选择),或者使用 BrowserStack、Sauce Labs 或类似的东西来运行 一次进行多项测试。

是的,我们可以使用GRID概念实现像Selenium一样的并行执行。

您需要通过将以下内容放入您的 json 文件来启动节点

    { "capabilities": 
    [ 
    { "browserName": "<e.g._iPhone5_or_iPad4>",
     "version":"<version_of_iOS_e.g._7.1>",
     "maxInstances": 1, 
     "platform":"<platform_e.g._MAC_or_ANDROID>" 
    } 
    ],
     "configuration":
     { 
    "cleanUpCycle":2000, 
    "timeout":30000, 
    "proxy": "org.openqa.grid.selenium.proxy.DefaultRemoteProxy", 
    "url":"http://<host_name_appium_server_or_ip-address_appium_server>:<appium_port>/wd/hub",
   "host": <host_name_appium_server_or_ip-address_appium_server>,
   "port": <appium_port>,
   "maxSession": 1,
   "register": true, 
  "registerCycle": 5000,
  "hubPort": <grid_port>,
  "hubHost": "<Grid_host_name_or_grid_ip-address>"
     } }

看看这个posthttp://qaautomationworld.blogspot.in/2014/11/appium-remote-execution-grid-execution.html

你可以参考这个parallel test with appium & selenium grid

至于 运行 Appium in Grid 遵循以下步骤

Step1: add the Appium in Environment Vairable 
Step2: Run the Grid for Hub  
Step3: Run the Appium through command prompt using the selective commands 
Step4: Run you java code through Maven command 'mvn'

为了通过 Appium 实现并行测试,我使用了 Selenium Grid 和 TestNG 以及 Appium。

步骤:

  1. 启动硒服务器。 (这将是 Selenium Grid 的中心)
  2. 在默认端口上启动 Appium 服务器(这将是 appium 网格配置的集线器)
  3. 现在在不同的端口上,使用 TestNG.xml/Properties 文件中定义的匹配功能初始化节点(Node1、Node2)。 (两个节点配置都必须在单独的 json.cfg 文件中定义)
  4. 在testNG.xml中添加一个参数作为parallel="tests".

确保已连接具有匹配功能的device/emulators。

以下命令可用于启动多个 Appium 服务器

appium -p 10000 # server 1
appium -p 10001 # server 2