使用Selenium WebDriver Java来自动执行拖放功能如何?
拖放操作借助鼠标完成。当我们将元素从一个位置拖到另一个位置时会发生这种情况。当我们尝试通过简单地拖放操作将文件从一个文件夹移动到另一个文件夹时,这是常见场景。
Selenium 使用 Actions 类来执行拖放操作。dragAndDrop(source, destination)是 Actions 类下的一个方法,用于执行拖放操作。此方法首先会对该元素执行一次左击,然后持续单击以按住源元素。接下来,它将移至目标位置并释放鼠标。
我们的目的是将第一个框拖放至第二个框。
示例
代码实现。
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import org.openqa.selenium.interactions.Actions; public class DragDrop{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); String url = "https://jqueryui.jqueryjs.cn/droppable/"; driver.get(url); driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); driver.switchTo().frame(0); // identify source and target element WebElement s=driver.findElement(By.("draggable")); WebElement t=driver.findElement(By.("droppable")); /Actions class with dragAndDrop() Actions act = new Actions(driver); act.dragAndDrop(s, t).build().perform(); driver.quit(); } }
输出
广告