首页 > 解决方案 > 无法仅在此网站上拖放 selenium

问题描述

WebDriver driver = new ChromeDriver(); //Launch the chrome browser
driver.get("https://www.seleniumeasy.com/test/drag-and-drop-demo.html");
driver.manage().window().maximize();
driver.findElement(By.xpath("//*[@id=\"todrag\"]/span[2]"));
WebElement from = driver.findElement(By.xpath("//*[@id=\"todrag\"]/span[2]"));
WebElement to = driver.findElement(By.xpath("//*[@id='mydropzone']"));
Actions builder = new Actions(driver);
builder.dragAndDrop(from, to).perform();

标签: javaselenium-webdriverdrag-and-dropselenium-chromedriver

解决方案


我把它放在Junit测试中。对我来说很好。

但我注意到您没有将属性设置为使用本地 chromedriver。

你有下载chromedriver吗?


    private WebDriver driver;

    @Before
    public void setUp() throws Exception {
        System.setProperty("webdriver.chrome.driver",
                //"C:/path/to/your/chromedriver.exe"
                "/path/to/your/chromedriver"); // Might be this.
        driver= new ChromeDriver();
    }

    @After
    public void tearDown() throws Exception {
        driver.quit();
    }

    @Test
    public void testDragNDrop() {
        driver.get("https://www.seleniumeasy.com/test/drag-and-drop-demo.html");
        driver.manage().window().maximize();
        driver.findElement(By.xpath("//*[@id=\"todrag\"]/span[2]"));
        WebElement from = driver.findElement(By.xpath("//*[@id=\"todrag\"]/span[2]"));
        WebElement to = driver.findElement(By.xpath("//*[@id='mydropzone']"));
        Actions builder = new Actions(driver);
        builder.dragAndDrop(from, to).perform();
    }

推荐阅读