要素はドラッグされたがセレンにはドロップされなかった

私はセレニウムのドラッグアンドドロップ機能を使って作業しています。要素をドラッグしますが、要素をドロップすることはできません。ソースと目的地の両方の要素が同じフレームにあり、全く問題がないようです.Plzヘルプ

以下は私が使用したコードクロックです。

Actions act=new Actions(Driver);
WebElement Destination=Driver.findElement(By.xpath("//*@id='dvdoccategories']/ul[1]/li/ul[1]/li/span"));
WebElement source=Driver.findElement(By.xpath("//*@id='dvuntaggedcntr']/div/a/img[1]"));
Boolean js= false;
js=Destination.isDisplayed();
System.out.println("destination displayed " + js); //This return true ,proves there is no frame issue
act.dragAndDrop(source, Destination).build().perform();

Actions act=new Actions(Driver);
act.clickAndHold(source);
act.moveToElement(Destination);
act.release(source);
act.build().perform();

Point coordinates1 = source.getLocation();
Point coordinates2 = Destination.getLocation(); 
Robot rb=new Robot();
rb.setAutoDelay(15);
rb.keyPress(KeyEvent.VK_F11);
act.dragAndDropBy(source, coordinates2.getX(),coordinates2.getY());

    Point coordinates1 = source.getLocation();
    Point coordinates2 = Destination.getLocation(); 
    Robot rb=new Robot();
    rb.mouseMove(coordinates1.getX(), coordinates1.getY());
    rb.mousePress(InputEvent.BUTTON1_MASK);
    rb.mouseMove(coordinates2.getX(), coordinates2.getY());
    rb.mouseRelease(InputEvent.BUTTON1_MASK);

******実行中にエラーは表示されません。ソース要素はドラッグされていると見なすことができますが、宛先にはドロップされません。
助けてください

ベストアンサー

“Action”クラスを使用することで、セレンの “ドラッグアンドドロップ”機能を実行できます。
まず、ドラッグ可能な要素を見つけて、次のコードをドラッグアンドドロップで使用します。

Actions builder = new Actions(driver);
builder.dragAndDropBy(draggable, 100, 100).build().perform();

上記のコードは、配置された要素をドラッグして100,100の位置にドロップします。したがって、ドロップしたい位置を指定することができます。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です