1 对浏览器操作
1.1 用webdriver打开一个浏览器
//打开firefox浏览器: WebDriver driver = new FirefoxDriver(); //打开IE浏览器 WebDriver driver = new InternetExplorerDriver (); //打开HtmlUnit浏览器 WebDriverdriver = new HtmlUnitDriver(); //打开chrome浏览器 WebDriverdriver = new ChromeDriver(); |
1.2 最大化浏览器&关闭浏览器
WebDriver driver = new FirefoxDriver(); driver.manage().window().maximize(); driver.close(); driver.quit(); |
1.3 设置浏览器窗口大小
private static void SetWindowTest(WebDriver driver) throws InterruptedException { // 设置窗口的 宽度为:800,高度为600 Dimension d = new Dimension(800, 600); driver.manage().window().setSize(d); Thread.sleep(2000); // 设置窗口最大化 driver.manage().window().maximize(); Thread.sleep(2000); // 设置窗口出现在屏幕上的坐标 Point p = new Point(500, 300); // 执行设置 driver.manage().window().setPosition(p); Thread.sleep(2000); } |
1.4 打开测试页面
打开测试页面 driver.get("http://www.baidu.com/"); driver.navigate().to("http://www.baidu.com/"); //navigate方法会产生1个Navigator对象,其封装了与导航相关的一些方法,比如前进后退等 |
1.5 处理浏览器弹出的新窗口
private static void MutiWindowTest(WebDriver driver) throws InterruptedException { WebDriver newWindow = null ; driver.get("http://www.hao123.com/"); //浏览器最大化 driver.manage().window().maximize(); //获取当前页面句柄 String current_handles = driver.getWindowHandle(); //点击 百度链接 driver.findElement(By.xpath("//*[@data-title='百度']")).click(); //接下来会有新的窗口打开,获取所有窗口句柄 Set<String> all_handles = driver.getWindowHandles(); //循环判断,把当前句柄从所有句柄中移除,剩下的就是你想要的新窗口 Iterator<String> it = all_handles.iterator(); while(it.hasNext()){ if(current_handles == it.next()) continue; //跳入新窗口,并获得新窗口的driver - newWindow newWindow = driver.switchTo().window(it.next()); } //接下来在新页面进行操作,也就是百度首页,我们输入一个java关键字进行搜索 Thread.sleep(5000); WebElement baidu_keyowrd = newWindow.findElement(By.id("kw")); baidu_keyowrd.sendKeys("java"); Thread.sleep(1000); //关闭当前窗口,主要使用close而不是quite, newWindow.close(); driver.switchTo().window(current_handles); System.out.println(driver.getCurrentUrl()); } |
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。