World()方法在ruby中做什么?

World()方法在ruby中做什么?,ruby,semantics,Ruby,Semantics,我想知道下面这行是做什么的: World(::Cucumber::Rails::Capybara::SelectDatesAndTimes) 因为我越来越 uninitialized constant Cucumber::Rails::Capybara::SelectDatesAndTimes::XPath (NameError) 我不明白它应该怎么做才能说出什么是错的:-) 编辑:我在WindowsVista 32位上注册了我的Gemfile:和gem列表(https://gist.git

我想知道下面这行是做什么的:

World(::Cucumber::Rails::Capybara::SelectDatesAndTimes)
因为我越来越

uninitialized constant Cucumber::Rails::Capybara::SelectDatesAndTimes::XPath (NameError)
我不明白它应该怎么做才能说出什么是错的:-)

编辑:我在WindowsVista 32位上注册了我的Gemfile:和gem列表(https://gist.github.com/822483)和ubuntu maverick 32位。两者都运行ruby 1.8.7。请注意,我使用的是cucumber rails的这个分支:因为我的最终目标是让这些日期时间选择器与capybara一起工作

我还发现,在Linux上,我收到另一条错误消息:

Unable to find '#<XPath::Union:0xb6e078b8>' (Capybara::ElementNotFound)
找不到“#”(Capybara::ElementNotFound)
这个
World()
方法不是Ruby的,而是Cucumber的,遗憾的是,他们甚至没有对它进行文档记录

在这种情况下,它看起来像是您的环境中缺少的东西,可能是Caprybara,请提供更多信息,并共享您的Ruby/Rails/Cucumber/Bundler/etc版本,以及您的
Gemfile
(请注意我仍在学习,因此这可能是错误的。

与类或对象特定的方法相比,世界级方法涉及多个对象


如果您在调用world方法时遇到问题,请检查world方法是否指定了找不到的对象。

world只是对象的一个实例,您可以在每个步骤定义中使用,它就像一个库,您无需导入即可公开(或在每个步骤定义文件中都需要)


更多信息请参见:

好的,我添加了一些环境信息。如果我没有添加有用的内容,请让我知道:-)