zoukankan      html  css  js  c++  java
  • [Selenium] WebDriver 操作 HTML5 中的 drag/drop

    以 jQuery UI 官方网站元素测试,地址:http://jqueryui.com/draggable/

    示例:

    package com.learningselenium.html5;

    import java.util.NoSuchElementException;

    import org.junit.After;

    import org.junit.Before;

    import org.junit.Test;

    import org.openqa.selenium.By;

    import org.openqa.selenium.WebDriver;

    import org.openqa.selenium.WebElement;

    import org.openqa.selenium.firefox.FirefoxDriver;

    import org.openqa.selenium.interactions.Actions;

    public class testActionDragAndDrop{

      WebDriver driver = new FirefoxDriver();

      private boolean isElementPresent(By by){

        try{

          driver.findElement(by);

          return true;

        }catch(NoSuchElemention e){

          return false;

        }

      }

      @Before

      public void setUp() throws Exception{

        driver.get("http://jqueryui.com/draggable/");

      }

      @Test

      public void testActionDragAndDrop() throws Exception{

        //switchto().frame 来切换焦点到iframe.demo-frame

        driver.switchTo().frame(driver.findElement(By.className("demo-frame")));

        Thread.sleep(3000);

        if(! isElementPresent(By.xpath("//div[@id='draggable']"))){

          Trhead.sleep(3000);

        }

        WebElement draggable = driver.findElement(By.xpath("//div[@id='draggable']"));

        new Actions(driver).dragAndDropBy(draggable,200,10).build().perform();

        Thread.sleep(10000);

      }

      @After 

      public void tearDown() throws Exception{

        driver.quit();

      }

    }

  • 相关阅读:
    Resin4 自定义端口
    设备系统识别,解决方案。
    Reactjs-JQuery-Vuejs-Extjs-Angularjs对比
    HTML页面的加载
    传输层协议TCP和UDP
    常用的14种HTTP状态码速查手册
    前端总结·基础篇·CSS(二)视觉
    前端总结·基础篇·CSS(一)布局
    AngularJS 中的Promise --- $q服务详解
    ngRoute 和 ui.router 的使用方法和区别
  • 原文地址:https://www.cnblogs.com/feifeidxl/p/4554711.html
Copyright © 2011-2022 走看看