手记

selenium使用Actions实现对隐藏菜单,隐藏选项 的操作

对于 需要鼠标移动到相应位置,才会出现更多菜单的,进行操作的情况下, 我们可以使用Actions类
第一步: 移动到含有隐藏菜单的位置,如:移动开发
第二步: 移动到想要操作为菜单位置,并点击
// Actions action = new Actions(driver);
// action.clickAndHold(driver.findElement(By.xpath("xxx"))).build().perform();
// driver.findElement(By.xpath(and_xpath)).click();

package TestData;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;

public class sdsd{
    public static void main(String[]args) throws Exception{
        System.out.println("start Chrome browser...");        
        System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.get("http://www.imooc.com/");
        driver.manage().window().maximize();
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        Thread.sleep(2000);
        String Mobile_development = "//*[@id='main']/div[2]/div[9]/div[3]/a";           
        String and_xpath = "//*[@id='main']/div[2]/div[4]/div/div/a[1]";
        WebElement WebMd=driver.findElement(By.xpath(Mobile_development));  
        Actions action = new Actions(driver);
        action.clickAndHold(WebMd).build().perform();   
        Thread.sleep(2000);     //加等待时间为了稳定,和看清效果,不然速度太快,页面没有展开就没有了
        // 下面这一行代码可以不用,只是为了看效果
        action.clickAndHold(driver.findElement(By.xpath(and_xpath))).build().perform();
        Thread.sleep(3000);
        driver.findElement(By.xpath(and_xpath)).click();
    }
}
3人推荐
随时随地看视频
慕课网APP