2013-05-01 63 views
8

現在我正在用水豚使用硒驅動器,但我想切換到使用Poltergeist。然而,我正在測試的很多界面涉及拖放頁面上特定位置的元素。我已經寫了拖放下面的方法,它在硒的工作原理:如何使用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 

我怎麼會去的吵鬧鬼寫這樣的事情?

回答

3

我不知道這是否正是你要找的,但Capybara has an API for dragging Poltergeist支持。

+2

是的,我試過了,但它不夠精確。我需要能夠拖放到座標,而不只是一個元素在另一個之上。如果我只是使用'drag_to',它不會註冊爲已經降落在適當的區域。 – lobati 2013-05-03 01:14:32