In questo momento sto utilizzando il driver selenio con Capybara, ma mi piacerebbe passare a utilizzare Poltergeist. Tuttavia, gran parte dell'interfaccia che sto testando implica il trascinamento e il rilascio di elementi in particolari posizioni sulla pagina. Ho scritto il seguente metodo per drag and drop, che funziona in selenio:Come trascinare e rilasciare usando il poltergeist?
def drag_drop(page, draggable, droppable, xoffset, yoffset)
driver = page.driver.browser
driver.mouse.move_to(draggable.native, draggable.native.size.height/2, draggable.native.size.width/2)
driver.mouse.down
driver.mouse.move_to(droppable.native, droppable.native.size.height/2 + yoffset, droppable.native.size.width/2 + xoffset)
driver.mouse.up
end
Come potrei fare per scrivere qualcosa di simile in poltergeist?
Sì, ci ho provato, ma non è abbastanza preciso. Devo essere in grado di trascinare e rilasciare le coordinate, non solo un elemento sopra l'altro. Se uso semplicemente 'drag_to' non si registra come se fosse atterrato nell'area appropriata. – lobati