Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/testing/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何使用rspec测试选择日期?_Ruby On Rails_Testing - Fatal编程技术网

Ruby on rails 如何使用rspec测试选择日期?

Ruby on rails 如何使用rspec测试选择日期?,ruby-on-rails,testing,Ruby On Rails,Testing,如何使用集成rspec测试测试以下代码我也在使用capybara …但它显示>无法选择选项,找不到id、名称或标签为“day”的选择框 编辑:在查看页面的HTML输出时,我注意到Rails会自动将id添加到day、month和year字段中。。。 例如,day的输出如下所示 <select id="show_date_3i" name="show[date(3i)]"><option value="1">1</option> 。。。它表示>>>无法选择选项,

如何使用集成rspec测试测试以下代码我也在使用capybara

…但它显示>无法选择选项,找不到id、名称或标签为“day”的选择框

编辑:在查看页面的HTML输出时,我注意到Rails会自动将id添加到day、month和year字段中。。。 例如,day的输出如下所示

<select id="show_date_3i" name="show[date(3i)]"><option value="1">1</option>

。。。它表示>>>无法选择选项,找不到id、名称或标签为“显示日期”的选择框。。。为什么会这样?

试试这个

select '28', :from => 'task[target_date]'
或者给选择者一些特殊的id

<%= f.date_select(:target_date,
                :default => Date.today,         
                :order => [:day, :month, :year], 
                :start_year => Date.today.year, 
                :end_year => Date.today.year + 3,
                :id => 'task_target_date') %>
试试这个

select '28', :from => 'task[target_date]'
或者给选择者一些特殊的id

<%= f.date_select(:target_date,
                :default => Date.today,         
                :order => [:day, :month, :year], 
                :start_year => Date.today.year, 
                :end_year => Date.today.year + 3,
                :id => 'task_target_date') %>

Rails表单帮助程序将日期选择字段分解为一组数据部分(可能从1i到6i命名),它们表示数据时间的年、月、日期、小时、分钟和秒

对于日期,仅使用年、月和日期

因此,给定表单帮助器标记:

 <%= f.date_select(:target_date,
                    :default => Date.today,         
                    :order => [:day, :month, :year], :start_year => Date.today.year, 
                    :end_year => Date.today.year + 3)
%>
见这一相关问题:

还有ruby-doc.info上的水豚匹配器文档:


Rails表单帮助程序将日期选择字段分解为一组数据部分(可能从1i到6i命名),它们表示数据时间的年、月、日期、小时、分钟和秒

对于日期,仅使用年、月和日期

因此,给定表单帮助器标记:

 <%= f.date_select(:target_date,
                    :default => Date.today,         
                    :order => [:day, :month, :year], :start_year => Date.today.year, 
                    :end_year => Date.today.year + 3)
%>
见这一相关问题:

还有ruby-doc.info上的水豚匹配器文档:


是否也在使用capybara?Cab你发布代码段生成的HTML?@KevinBedell我已经更新了这个问题,因为我从HTML源代码中发现了一些东西:这里有两个参考源:并且也在使用capybara?Cab你发布代码段生成的HTML?@KevinBedell我已经更新了我发现的问题html来源:这里有两个参考来源:它说>>>不能选择选项,没有id、名称或标签为“task[target_date]”的选择框。我已经更新了这个问题,因为我从html来源中发现了一些东西:它说>>>不能选择选项,没有id、名称或标签为“task[target_date]的选择框'foundI更新了问题,因为我从html源中发现了一些内容:它说>>>无法选择选项,没有带id、名称或标签的选择框'target\u date'foundI更新了问题,因为我从html源中发现了一些内容:它说>>>无法选择选项,没有带id、名称的选择框,或者标签“target_date”found我已经更新了这个问题,因为我从html源代码中发现了一些东西:
 <%= f.date_select(:target_date,
                    :default => Date.today,         
                    :order => [:day, :month, :year], :start_year => Date.today.year, 
                    :end_year => Date.today.year + 3)
%>
select '2011/01/01', :from => 'Show Date'