【问题标题】:Running same Cucumber Features on different machines concurrently using parallel_tests gem使用 parallel_tests gem 在不同的机器上同时运行相同的 Cucumber 功能
【发布时间】:2014-07-27 23:15:08
【问题描述】:

使用 parallel_tests gem 在不同机器上同时运行相同的 Cucumber 功能

我正在尝试弄清楚如何使用 parallel_tests gem 在各种不同的机器上同时运行完全相同的黄瓜功能。

目前我让它们在不同的机器上运行,但相同的功能不执行,它只是拆分功能并在不同的机器上运行不同的功能。

关于我想要做什么的更多说明:

MACHINE 1 (Win 7) - EXECUTE SAME FEATURES CONCURRENTLY
MACHINE 2 (Win 8) - EXECUTE SAME FEATURES CONCURRENTLY
MACHINE 3 (Mac OS X) - EXECUTE SAME FEATURES CONCURRENTLY
...

我的架构也是:

Cucumber -> Capybara -> Selenium Webdriver -> Selenium Grid

parallel_tests gem:https://github.com/grosser/parallel_tests

【问题讨论】:

  • 据我了解,parallel_tests 的建议是在不同的机器上运行不同的功能,以缩短运行整个套件的等待时间。你真正想做什么?
  • 因为如果您想在每台计算机上运行整个套件,请同时独立运行。请澄清您的建议。
  • 我想在多台机器(操作系统/浏览器)上运行相同的功能以覆盖所有支持的环境...

标签: ruby selenium-webdriver cucumber capybara parallel-testing


【解决方案1】:

parallel_tests gem 真正用于并行化,而不是执行多个平台。

您可能会发现以下内容很有用: Sauce Gem 30 rake tasks

“Sauce 集成目前针对 RSpec 和 Cucumber,在本地服务器上运行,您可以创建多个副本。它为每个平台运行每个测试的副本,并将它们划分为您可用的所有并发Sauce Labs 默认帐号”

希望对你有帮助,我自己还没用过。

【讨论】:

    【解决方案2】:

    【讨论】:

      【解决方案3】:

      我对你的这种说法感到困惑:

      目前我让它们在不同的机器上运行,但相同 功能不执行,它只是拆分功能并运行 不同机器上的不同功能。

      parallel_tests 用于拆分测试并在多个核心上运行它们,而不是在多台机器的分布式环境上。它可以使用--only-group 标志对要在分布式环境中运行的测试进行分组,但它实际上并不在分布式环境中运行测试。所以你必须自己做一些提升才能让测试在分布式环境中运行。您可以像这样在多台机器上运行所有测试:

      1. 使用net-ssh ssh 进入您的每个盒子。
      2. 使用每个 ssh 会话来运行您的 parallel_tests 脚本(它应该分解测试并在 current 框中并行运行它们——只是不要使用 --only-group 选项 as described here )

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多