繁体   English   中英

如何打开黄瓜,水豚和硒的多个并发会话?

[英]How can I open multiple concurrent sessions with cucumber, capybara, and selenium?

我正在为(RoR 2.3.5)网站修复一些旧的集成测试,并且某些方案(及其行为)取决于让多个用户同时登录。 曾几何时,这些工具工作了……三个工程师和18个月前。

我们的基本场景是用黄瓜写成的,水豚与硒结合。 我已经尝试了可以​​想象的关于Capybara :: Session.new和open_session的所有变体。 这些要么以编程方式成功,但是继续使用现有的硒窗口; 或者,它们导致某种测试方法不存在。

我也曾尝试在“次要”会话中使用webrat,但无法说服黄瓜在场景中的单个步骤中切换驱动程序(尽管它确实在场景之间切换)。

我是否完全陷入了小溪? 如此棒的是,selenium会以多个unix用户身份打开多个浏览器,以使它们不共享会话状态,然后登录网站。 但是,我什至不知道该在哪儿开始黑客攻击。

老实说,在这一点上,我什至不知道我在使用什么工具,哪个负责什么功能。 深入研究水豚和黄瓜的代码会产生数百行元编程魔术,这些魔术以某种方式被植入测试框架中。 尽管我以前很年轻,但确实让我讨厌TDD。

尝试升级到0.4.0.rc。 Selenium现在允许多个会话(正如您所知道的,它将启动多个浏览器)。 但是,仍然没有高级API,因此您必须手动实例化会话并进行处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM