无法创建新页面:SitePrism 页面出现未初始化常量错误

Unable to create new pages: uninitialized constant error with SitePrism page

有几个类似的问题,但我的问题似乎有所不同,因为我基本上是在复制当前正在运行的文件。

我加入了一个团队,其中最后一个人留下了一个 cucumber/ruby 具有以下设置的框架:

我搜索了整个代码,看看他是否有 'require' 或 'include' 以及 'page1.rb'、'page1' 或 'PageOne',并且他没有,但即便如此,当一个人试图创建一个新对象时它仍然有效。

所以,现在我想创建一个新的 class,我只是将工作文件复制并粘贴到同一位置,并将所有文件重命名如下:

我遇到的问题是,当我尝试创建新对象时出现此错误: - @new_page_two = PageTwo.new

NameError: uninitialized constant PageTwo

知道为什么第一个起作用而 copy/paste 在这种情况下不起作用吗?你有什么可以建议我试试的吗?

终于找到了。这似乎是这个特定项目的问题。

有一个文件正在实时加载 类,尽管它们是文件名的硬编码部分,因此找不到我的新文件,即

他们正在加载 *1.rb 页,而我复制了一份并将其重命名为 page2.rb...

值得指出的是,将 SitePrism 与 Cucumber 一起使用将使用 Cucumbers Autoloader,因此请务必在 env.rb 中手动覆盖它,因为在该页面的某个部分之前定义页面会导致失败。

确保你定义的页面由内而外。 IE。最小的部分(Sections),首先,然后是 Pages。