Dalla documentazione Capybara:
The file field can be found via its name, id or label text.
E avete chiaramente già questo, che è un po 'sconcertante. C'è una finestra modale che blocca questo e/o il page.driver è passato a qualcos'altro per caso? Lo chiedo perché è in realtà non completamente necessario per interagire con un pulsante del modulo e causare la visualizzazione di una finestra modale o di file/Explorer/Finder, e talvolta questo può confondere il page.driver (es .: passa al focus sulla finestra anziché sul pagina).
provare a rimuovere qualunque azione click_button appena prima di questo passaggio, e quindi provare questo:
attach_file('ok', File.absolute_path('./fileset/publisher/upload_pic.jpg'))
Questo ha funzionato per me in precedenza, in un super profondamente div parented che finì con una classe pulsante.