要素をある場所から別の場所にドラッグアンドドロップしたいとします。したがって、私は自分の機能を達成するためにアクションクラスを使用しています。ActionクラスがSelenium 3.5.3で動作していません
問題は、コードが正常に実行され、エラーが表示されていても、機能の目標は達成されないということです。
firefoxとchromeブラウザで同じコードを試しましたが、同じ問題が両方のブラウザで複製されています。
ここにサイトurlがあります。私もこの答えをしようと持っていますが、同じ問題を複製し
driver.get("http://www.seleniumeasy.com/test/drag-and-drop-demo.html");
driver.manage().window().maximize();
driver.findElement(By.xpath("//div[@id='todrag']//span[contains(text(), 'Draggable 1')]"));
driver.findElement(By.xpath("//div[@id='todrag']//span[contains(text(), 'Draggable 2')]"));
driver.findElement(By.xpath("//div[@id='todrag']//span[contains(text(), 'Draggable 3')]"));
driver.findElement(By.xpath("//div[@id='todrag']//span[contains(text(), 'Draggable 4')]"));
WebElement to = driver.findElement(By.xpath("//div[@class='w50 moveleft']//div[@id='mydropzone']"));
String[] array_drag = new String[] {"Draggable 1", "Draggable 2", "Draggable 3", "Draggable 4"};
for(int i=0; i<array_drag.length; i++)
{
WebElement from = driver.findElement(By.xpath("//div[@id='todrag']//span[contains(text(), '"+array_drag[i]+"')]"));
Actions act = new Actions(driver);
act.clickAndHold(from).build().perform();
Thread.sleep(2500);
act.clickAndHold().moveToElement(to).release(to).build().perform();
Thread.sleep(2500);
}
:
私はコードを試してみました。
Actions act = new Actions(driver);
act.moveToElement(from).moveToElement(to).build().perform();
以下の添付画像もご覧になれます。コードは正常に実行され、エラーは表示されません。
誰も私がこの問題を解決するのを助けることができますか?
はアクションが動作していないため、直接dragAndDropですか? –
@ムラリセレン、はい、それも動作していません。 –
そのWebサイトは期待どおりに動作していないようです。手動でドラッグ&ドロップすることはできません。あなたのコードではなく、サイトに問題はありますか? –