Ruby on rails 对控制器变量的访问

Ruby on rails 对控制器变量的访问,ruby-on-rails,cucumber,bdd,capybara,Ruby On Rails,Cucumber,Bdd,Capybara,我有一个控制器,它定义了要在视图中显示的@projects变量 有没有办法在黄瓜步骤中访问该项目? 请注意,此变量包含分页结果,其目的是测试值是否显示在页面中 我试图通过赋值和控制器访问变量,但它们都是nill 谢谢。在Cucumber中,通常处理此问题的方法是直接测试输出 因此: 给定X个项目 当我查看项目第N页时 那么我应该看看A项目 我不应该看到B项目 您不需要从Cucumber功能访问控制器变量,因为Cucumber旨在模拟用户在您的站点上的体验,而用户也没有直接访问控制器的权限。在

我有一个控制器,它定义了要在视图中显示的@projects变量

有没有办法在黄瓜步骤中访问该项目? 请注意,此变量包含分页结果,其目的是测试值是否显示在页面中

我试图通过赋值和控制器访问变量,但它们都是nill


谢谢。

在Cucumber中,通常处理此问题的方法是直接测试输出

因此:

  • 给定X个项目
  • 当我查看项目第N页时
  • 那么我应该看看A项目
  • 我不应该看到B项目

您不需要从Cucumber功能访问控制器变量,因为Cucumber旨在模拟用户在您的站点上的体验,而用户也没有直接访问控制器的权限。

在Cucumber中,通常处理此问题的方法是直接测试输出

因此:

  • 给定X个项目
  • 当我查看项目第N页时
  • 那么我应该看看A项目
  • 我不应该看到B项目

您不需要从Cucumber功能访问控制器变量,因为Cucumber旨在模拟用户在站点上的体验,用户也没有直接访问控制器的权限。

好的,所以我必须说出页面中应显示的5个项目的名称(例如)?我认为这可能更具动态性,因为项目是由工厂创建的。您可以通过查找页面中的元素使其更具动态性。您可以使用html解析和正则表达式完成一些非常智能的任务。。。“因此我可以在页面上看到5个项目”可能映射到查找特定html元素的内容。如果项目是由工厂创建的,那么您应该能够在步骤定义中访问。因此,将变量存储在给定步骤中,您应该能够在随后的when\then stepsOk中访问该变量,因此我必须说出页面中应显示的5个项目的名称(例如)?我认为这可能更具动态性,因为项目是由工厂创建的。您可以通过查找页面中的元素使其更具动态性。您可以使用html解析和正则表达式完成一些非常智能的任务。。。“因此我可以在页面上看到5个项目”可能映射到查找特定html元素的内容。如果项目是由工厂创建的,那么您应该能够在步骤定义中访问。因此,将变量存储在给定步骤中,您应该能够在随后的when\then步骤中访问该变量