有关我可以做什么/用于在Windows上并行运行黄瓜场景的任何想法?到目前为止,我已经尝试过(以下结果):
WatirGrid
必须使用Ruby线程实际以“并行”方式运行 . 这迫使我们将浏览器对象包装在一个线程中,因此一旦线程块关闭就无法访问 . (无法将Browser对象传递给黄瓜环境)
Hydra:
需要SSH(和公钥)访问远程盒子(即没有Windows)
Selenium Grid:
超重且找不到明确的黄瓜测试路径
TestJour:
需要Bonjour(不适用于Windows)
1 回答
重新 Watirgrid ...
我已经添加了一个迭代方法,可以传递一组watir代码来执行远程浏览器对象 . 因此浏览器对象在步骤之间变得可重用 . 更新详细的黄瓜示例如下:
https://github.com/90kts/watirgrid/blob/master/examples/cucumber/step_definitions/example_steps.rb
你的cuke步骤最终看起来像这样:
如果您有任何问题,请随时给我留言 . 我们还有一个关于EC2的watirgrid的商业实现,可在http://gridinit.com/public/examples进行测试,敬请关注更多不同测试框架的更新!
仅供参考,控制/迭代助手是最新版本的watirgrid v1.1.2
对于每个提供商的不同场景 do it in parallel ,我只需要一个看起来像这样的支持/ env.rb:
注意我正在使用
:take_all => true
获取对提供程序的独占访问权并将其释放回网格at_exit
...然后我将使用CLI从单独的测试运行程序调用我的方案,可能包含在bash或DOS脚本中,例如