1

几天来,我一直在寻找一个简单的答案,但似乎无法在 stackoverflow.com 或谷歌上找到答案。因此,首先,如果在其他地方回答了这个问题,请指出我正确的方向。

因此,我有一个使用 cucumber-rails gem 的相对较新的 Rails 3 项目。我对 Rails 比较陌生,但在 Ruby 和其他 Web 框架(如 Sinatra 和 Ramaze)方面有经验。我的理解是开箱即用,cucumber-rails 使用 Capybara 与 Web 应用程序交互,并且以某种方式在不启动 rails 服务器的情况下执行此操作。它以某种方式与 rack 交互以模拟请求。不确定我是否完全正确,但我很确定它不需要正在运行的 rails 服务器。

我不是 Capybara DSL 的忠实粉丝,我更喜欢我在一些非 Rails 项目(甚至非 Ruby 项目)中使用过的 watir-webdriver。但是,我无法找到任何地方向我展示如何将 Capybara 换成 watir-webdriver。

所以我的问题是:

cucumber-rails gem 是否有能力将 Capybara 换成 watir-webdriver?

如果是这样,最好的方法是什么?

如果不是,这是否意味着我需要放弃 cucumber-rails 并在我的项目中手动设置带有 watir-webdriver 的黄瓜?

4

1 回答 1

0

好吧,从项目描述中看起来并不乐观:

用于 Cucumber 的 Rails 生成器,特别支持 Capybara 和 DatabaseCleaner

果然,它明确地、无条件地在这里加载 Capybara

我认为这意味着您需要自己连接它。

话虽如此,我认为没有什么能阻止您安装 gem、运行rails g cucumber:install,然后替换它生成的文件中的 Capybara 特定位。

于 2013-01-10T11:22:29.467 回答