Ruby 水豚妖怪无法上传文件

Ruby 水豚妖怪无法上传文件,ruby,selenium,capybara,Ruby,Selenium,Capybara,您好,我正试图上传文件与水豚poltergeist,对隐藏的输入。这是我的特征文件 Scenario: Import csv with valid and invalid entries, and try to charge them again And Joe navigates to "Lottery import" page of "Joe's Test Event" And Joe uploads file from path "/vagrant/tests/ca

您好,我正试图上传文件与水豚poltergeist,对隐藏的输入。这是我的特征文件

  Scenario: Import csv with valid and invalid entries, and try to charge them again
    And  Joe navigates to "Lottery import" page of "Joe's Test Event"
    And  Joe uploads file from path "/vagrant/tests/capybara/features/admin/lottery_import/step_definition/sample_lottery_entries_list.csv" into "file" field
和用于导入的rb文件

Then(/^(\S*) uploads file from path "([^"]*)" into "([^"]*)" field$/) do |user, file_path, field|
  page.attach_file(field, File.expand_path(file_path), :visible => false)
  waits_for_spinner_by_class_not_visible
end
奇怪的是,这适用于Selenuim驱动程序,但不适用于poltergeist驱动程序。
任何关于如何解决这个问题的想法都会因为样式化的原因而被隐藏,这使得它们不可交互。因为水豚的
attach_file
有一个选项,可以使文件输入暂时变得更容易显示/可交互

page.attach_file field, file_path, make_visible: true
这将对文件输入元素临时应用CSS{opacity:1,display:'block',visibility:'visible'}。如果CSS不能使输入可见,您可以将
make_visible
设置为哈希值,而不是
true