欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java selenium3开发(十):鼠标的单击双击右键等事件

程序员文章站 2024-02-27 16:46:15
...

java selenium3开发(一):搭建开发环境

java selenium3开发(二):IE谷歌火狐打开

java selenium3开发(三):简单测试百度搜索

java selenium3开发(四):从打开到事件简单分析

java selenium3开发(五):Navigatio对象方法

java selenium3开发(六):cookies的获取

java selenium3开发(七):Window对象操作

java selenium3开发(八):获取element节点

java selenium3开发(九):By选择器使用

鼠标的单击,双击,悬浮,移动,按键按下事件,按键松开事件,进入,离开等待事件

第一步:获取driver对象,并找到一个节点,代码如下:

System.setProperty("webdriver.chrome.driver", "C:\\Users\\admin\\Desktop\\x\\" +
       "selenium\\driver\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
WebDriver.Window window = driver.manage().window();
window.maximize();
driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
driver.get("http://localhost:8039/aw/test.html");
WebElement el = driver.findElement(By.id("x13"));

第二步:html代码如下:

<span id="x13">xxxxx</span>
<div></div>

    <script src="lib/jquery-3.4.1/jquery-3.4.1.min.js"></script>
    <script>
    // dblclick
    $("#x13").click(function(){
        console.log("----");
        alert(22);
    })
    </script>

第三步:创建一个Actions对象,此对象需要传入一个driver,Actions就是执行鼠标的各种事件,相当于一个鼠标,代码如下:

Actions actions = new Actions(driver);

第四步:单击事件,注意一定要perform()方法,不然不好执行,代码如下:

Actions actions = new Actions(driver);
actions.click(el).perform();

第五步:双击事件,代码如下:

Actions actions = new Actions(driver);
actions.doubleClick(el).perform();

第六步:actions.doubleClick(el);  // 双击
actions.keyDown("a");  // 按下a键事件
actions.keyUp("a");   // 松开a键事件
actions.moveByOffset(22, 23); // 移动到指定位置

这些用法同上,不再解释

第七步:clickAndHold(WebElement)方法,这个这个意思就是鼠标移动到节点按住不放,想要释放执行actions.release();代码如下:

Actions actions = new Actions(driver);
actions.clickAndHold(el);  //移动到el节点按住左键不放
actions.release(); // 释放左键

第八步:dragAndDrop(source, target)方法:托source->target地方

dragAndDropBy(source, xOffset, yOffset):要拖动的元素A,拖动元素的坐标;

Actions actions = new Actions(driver);
// actions.dragAndDrop(el, driver.findElement(By.tagName("div")));
actions.dragAndDropBy(el, 20, 50);

第九步:contextClick(el)方法:相当于鼠标的右键功能,代码如下:

Actions actions = new Actions(driver);
actions.contextClick(el).perform();