对于 需要鼠标移动到相应位置,才会出现更多菜单的,进行操作的情况下, 我们可以使用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();
}
}