2013-05-01 1 views
8

今、私はCapybaraでセレニウムドライバーを使用していますが、私はポルターガイストの使用に切り替えたいと思います。しかし、私がテストしている多くのインターフェースでは、ページ上の特定の場所に要素をドラッグ&ドロップする必要があります。私はセレンで働く、ドラッグ&ドロップのために、以下の方法を書いている:ポルターガイストを使用してドラッグアンドドロップするにはどうすればよいですか?

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

私はそれがあなたが探しているものであるかどうかわかりませんが、PoltergeistがサポートしているのはCapybara has an API for draggingです。

+2

ええ、私はそれを試みましたが、それは十分正確ではありません。私は座標にドラッグアンドドロップすることができる必要があります、他の要素の上にある1つの要素だけではありません。私が 'drag_to'だけを使用すると、適切な領域に上陸したとして登録されません。 – lobati

関連する問題