使用parallel_tests gem同时在不同的机器上运行相同的黄瓜功能
我试图弄清楚如何使用parallel_tests gem同时在各种不同的机器上运行EXACT SAME Cucumber Features。
目前我让它们在不同的机器上运行但是SAME功能不会执行,它只是拆分功能并在不同的机器上运行不同的功能。
更多关于我想做的事情的澄清:
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
...
我的架构也是:
黄瓜 - > Capybara - > Selenium Webdriver - > Selenium Grid
parallel_tests gem:https://github.com/grosser/parallel_tests
答案 0 :(得分:0)
parallel_tests gem的目的是实现并行,而不是执行多个平台。
您可能会发现以下内容: Sauce Gem 30 rake tasks
" Sauce集成目前针对RSpec和Cucumber,在本地服务器上运行,您可以旋转多个副本。它为每个平台运行每个测试的副本,并将它们划分为Sauce Labs帐户默认的所有并发性"
希望它有所帮助,我还没有自己使用它。
答案 1 :(得分:0)
感谢您的澄清。要完成所有受支持环境(操作系统/浏览器)的应用测试,您可以使用Selenium Grid这里的内容Selenium RC: Run tests in multiple browsers automatically。
TestingBot是一个使用它的服务:http://blog.testingbot.com/2012/02/19/selenium-cucumber-capybara
此处描述了其他方法:http://altoros.github.io/2013/running-capybara-tests-in-remote-browsers/
http://paauspaani.blogspot.mx/2013/05/running-tests-remotely-using-selenium.html
还有一个演示文稿:http://www.slideshare.net/martinkleppmann/crossbrowser-testing-in-the-real-world
这也可以帮助你Has anyone figured out a way to run the same cucumber scenario on multiple browsers/web drivers?
希望这会给你一些线索。
答案 2 :(得分:0)
我对你的陈述感到困惑:
目前我让它们在不同的机器上运行但是相同 功能不执行,它只是拆分功能和运行 不同机器上的不同功能。
parallel_tests用于拆分测试并在多个核心上运行它们,而不是在多台机器的分布式环境中运行。它可以使用--only-group
标志对要在分布式环境上运行的测试进行分组,但它实际上并未在分布式环境中运行测试。所以你必须自己动手来让测试在分布式环境中运行。您可以在多台计算机上运行所有测试,如下所示:
--only-group
选项as described here)