zoukankan      html  css  js  c++  java
  • Java+Selenium——Actions鼠标悬停

    一般测试场景鼠标悬停分两种常见:

    第一种是鼠标悬停在某一个元素上方,然后会出现下拉子菜单;

    第二种就是在搜索输入过程,选择自动补全的字段。

    关于鼠标悬停,selenium把这个方法放在了Actions.java文件中,先来看看鼠标悬停出现下拉菜单的情况。

    package rjcs;
    
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.List;
    import java.util.Set;
    
    import org.openqa.selenium.interactions.Actions;
    import org.apache.commons.io.FileUtils;
    import org.openqa.selenium.TakesScreenshot;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.interactions.Actions;
    import org.openqa.selenium.By;
    import org.openqa.selenium.Keys;
    import org.openqa.selenium.WebElement;
    import org.testng.annotations.Test;
    import org.openqa.selenium.*;
    
    import java.awt.Rectangle;
    import java.awt.Robot;
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    
    import javax.imageio.ImageIO;
    
    import org.openqa.selenium.OutputType;
    
    import com.thoughtworks.selenium.SeleneseTestNgHelper;
    
    public class ckqhh 
    {
        public static void main(String[] args)
        
        {
             System.setProperty("webdriver.firefox.bin","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");    //设置火狐的安装路径,防止系统找不到
                
             FirefoxDriver driver = new FirefoxDriver();        //初始化FireFox浏览器实例,并打开浏览器
             
            try
            {
                 driver.manage().window().maximize();         //最大化窗口
                 
                 Thread.sleep(3000);        
                 
                 driver.manage().window().maximize();         //最大化窗口
                 
                 Thread.sleep(3000);
                 
    
                 driver.get("https://www.baidu.com/");  
                
                 Thread.sleep(5000);
                 
                 WebElement settings = driver.findElement(By.xpath("//*[@id='u1']/a[8]"));   // 设置
                 
                 Actions action = new Actions(driver);
                 action.moveToElement(settings).perform();
                 
                 Thread.sleep(5000);
                 
                 driver.findElement(By.linkText("高级搜索")).click();
    
                 
                 Thread.sleep(5000);
                 
            }catch (Exception e) 
            {
                e.printStackTrace();
            }finally 
            {
                driver.quit();
            
             }
       }
        
    
    }

    ================================================================================================================

    package rjcs;
    
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.List;
    import java.util.Set;
    
    import org.openqa.selenium.interactions.Actions;
    import org.apache.commons.io.FileUtils;
    import org.openqa.selenium.TakesScreenshot;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.openqa.selenium.interactions.Actions;
    import org.openqa.selenium.By;
    import org.openqa.selenium.Keys;
    import org.openqa.selenium.WebElement;
    import org.testng.annotations.Test;
    import org.openqa.selenium.*;
    
    import java.awt.Rectangle;
    import java.awt.Robot;
    import java.awt.Toolkit;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    
    import javax.imageio.ImageIO;
    
    import org.openqa.selenium.OutputType;
    
    import com.thoughtworks.selenium.SeleneseTestNgHelper;
    
    public class ckqhh 
    {
        public static void main(String[] args)
        
        {
             System.setProperty("webdriver.firefox.bin","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");    //设置火狐的安装路径,防止系统找不到
                
             FirefoxDriver driver = new FirefoxDriver();        //初始化FireFox浏览器实例,并打开浏览器
             
            try
            {
                 driver.manage().window().maximize();         //最大化窗口
                 
                 Thread.sleep(3000);        
                 
                 driver.manage().window().maximize();         //最大化窗口
                 
                 Thread.sleep(3000);
                 
                 driver.get("https://www.baidu.com/");  
                 
                 Thread.sleep(5000);
                 
                 driver.findElement(By.id("kw")).sendKeys("selenium a");
                 
                 Thread.sleep(5000);
    
                 
                 // 自动补全其中一个选择项
                 WebElement auto_text = driver.findElement(By.xpath("//*[@id='form']/div/ul/li[@data-key='selenium api']"));
                 
                 Actions action = new Actions(driver);
                 action.moveToElement(auto_text).click().perform();
    
    
                 
                 Thread.sleep(5000);
                 
            }catch (Exception e) 
            {
                e.printStackTrace();
            }finally 
            {
                driver.quit();
            
             }
       }
        
    
    }
  • 相关阅读:
    jQuery each的实现与call方法的详细介绍
    转载Entity Framework 5.0(EF first)中的添加,删除,修改,查询,状态跟踪操作
    转载有个小孩跟我说LINQ(重点讲述Linq中GroupBy的原理及用法)
    luogu P3305 [SDOI2013]费用流
    bzoj 4819: [Sdoi2017]新生舞会
    bzoj4817: [Sdoi2017]树点涂色
    bzoj4816: [Sdoi2017]数字表格
    bzoj 4818: [Sdoi2017]序列计数
    [JSOI2007]重要的城市(x)
    BZOJ 1009 [HNOI2008]GT考试
  • 原文地址:https://www.cnblogs.com/xiaobaibailongma/p/12217944.html
Copyright © 2011-2022 走看看