Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.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 用水豚填充隐藏区域_Ruby On Rails_Ruby_Testing_Capybara - Fatal编程技术网

Ruby on rails 用水豚填充隐藏区域

Ruby on rails 用水豚填充隐藏区域,ruby-on-rails,ruby,testing,capybara,Ruby On Rails,Ruby,Testing,Capybara,我正在进行集成测试,我必须填充一些隐藏字段。问题是这似乎没有被考虑进去 it "submits project form" do page.all("#project_description", :visible => false).set(@project.description) click_button "submit" expect(page).to have_content @project.description end 问题是,我在启动任务时收到此

我正在进行集成测试,我必须填充一些隐藏字段。问题是这似乎没有被考虑进去

it "submits project form" do
    page.all("#project_description", :visible => false).set(@project.description)
    click_button  "submit"
    expect(page).to have_content @project.description
end

问题是,我在启动任务时收到此错误消息
说明不能为空
。我确信已找到
隐藏字段
,但未完成填充。我怎样才能修好它?(我将
Capybara.ignore_hidden_elements
设置为
false

这可能不是最好的解决方案,但可以用javascript实现。例如,如果您使用的是jQuery:

page.execute_script "$('#project_description').val('#{@project.description}')"
如果
@project.description
中有一些
'
字符,则需要对其进行转义(请参阅,不确定如何在集成测试中使用它)。

重复的