TestNG(三)对Chrome浏览器的操作

重点

1、打开浏览器输入网址(driver.grt)。对应例1

注意:get方法一定会等页面加载出来再执行下面的代码,如果页面还在加载会等待页面加载出来。

2、浏览器后退(driver.navigte().back();)对应例2

3、浏览器前进(driver.navigate().forward();)对应例3

4、浏览器刷新(driver.navigate().refresh();)对应例4

5、浏览器设置大小  对应例5

Dimension  dimension = new Dimension(300,300);
driver.manage().window().setSize(dimension);

6、浏览器最大化  对应例5

driver.manage().window().maximize();

7、获取当前URL  对应例6

String url = driver.getCurrentUrl();

8、代码优化

使用@BeforeMethod和@AfterMethod进行优化

@BeforeMethod:是在每个Test执行的时候,都会去执行一次@BeforeMethod,所以把打开浏览器的内容放在@BeforeMethod

@AfterMethod:是在每个Test执行之后都会执行一次@AfterMethod,所以可以关闭浏览器的内容放在@AfterMethod

这样的话,就相当于,Test内容里面只放了对浏览器的操作部分,把打开和关闭单独开来。避免代码冗余,也减少代码。结合以上知识,对代码进行优化。例7

一、打开浏览器输入网址

例1、打开chrome浏览器,输入www.baidu.cm网址,等待5S然后关闭浏览器。

public class TestBrowserActions {
/*
打开chrome浏览器
输入百度网址
等待5S
退出百度
*/

@Test
public void browserAcion ()throws InterruptedException{
System.setProperty("webdriver.chrome.deriver","F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com");
Thread.sleep(5000);
driver.quit();
}
}

二、浏览器后退
例2、
       /*
打开chrome浏览器
输入百度网址
等待3S
浏览器后退
等待3S
退出百度
*/
@Test
public void browesback()throws InterruptedException{
System.setProperty("webdriver.chrome.driver","F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().back();
Thread.sleep(3000);
driver.quit();
}

}

三、浏览器前进

例3
@Test
/*
打开chrome浏览器
输入百度网址
等待3S
浏览器前进
等待3S
退出百度
*/
public void browesforward()throws InterruptedException{
System.setProperty("webdriver.chrome.driver","F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().forward();
Thread.sleep(3000);
driver.quit();

}

四、打开浏览器刷新
例4
@Test
/*
打开chrome浏览器
输入百度网址
等待3S
浏览器舒刷新
等待3S
退出百度
*/
public void browesrefresh()throws InterruptedException{
System.setProperty("webdriver.chrome.driver","F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().refresh();
Thread.sleep(3000);
driver.quit();

}

五、浏览器设置大小,并且最大化
例5

@Test
/*
打开chrome浏览器
设置浏览器大小
等待3S
浏览器最大化
等待3S
退出百度
*/
public void browesmix() throws InterruptedException{
System.setProperty("Webdriver.chrome.driver","F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
Dimension dimension = new Dimension(300,300);
driver.manage().window().setSize(dimension);
Thread.sleep(3000);
driver.manage().window().maximize();
Thread.sleep(3000);
driver.quit();
}

 

六、获取URL

例6

}
@Test
/*
打开chrome浏览器
获取URL
校对获取到的URL是否为百度界面
等待3S
退出百度
*/
public void browesurl() throws InterruptedException {
System.setProperty("Webdriver.chrome.driver", "F:\\工程文件\\drivers\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.baidu.com");
String url = driver.getCurrentUrl();
System.out.println("获取到的URL是:" + url);
Assert.assertEquals(url, "https://www.baidu.com/");
Thread.sleep(3000);
driver.quit();
}



结合以上知识,对代码进行优化。
例7
package test02;


import org.openqa.selenium.Dimension;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.testng.reporters.jq.INavigatorPanel;
public class TestBrowserActions {
WebDriver driver;

@BeforeMethod
public void browrsopen(){
System.setProperty("webdriver.chrome.deriver","F:\\工程文件\\drivers\\chromedriver.exe");
driver = new ChromeDriver();
}

@Test
/*
打开chrome浏览器
输入百度网址
等待5S
退出百度
*/
public void browserAcion ()throws InterruptedException{
driver.get("http://www.baidu.com");
Thread.sleep(5000);
driver.quit();
}
/*
打开chrome浏览器
输入百度网址
等待3S
浏览器后退
等待3S
退出百度
*/
@Test
public void browesback()throws InterruptedException{
driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().back();
Thread.sleep(3000);
driver.quit();
}
@Test
/*
打开chrome浏览器
输入百度网址
等待3S
浏览器前进
等待3S
退出百度
*/
public void browesforward()throws InterruptedException{

driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().forward();
driver.navigate().refresh();
Thread.sleep(3000);
driver.quit();

}
@Test
/*
打开chrome浏览器
输入百度网址
等待3S
浏览器舒刷新
等待3S
退出百度
*/
public void browesrefresh()throws InterruptedException{
driver.get("http://www.baidu.com");
Thread.sleep(3000);
driver.navigate().refresh();
Thread.sleep(3000);
driver.quit();
}


@Test
/*
打开chrome浏览器
设置浏览器大小
等待3S
浏览器最大化
等待3S
退出百度
*/
public void browesmix() throws InterruptedException{
Dimension dimension = new Dimension(300,300);
driver.manage().window().setSize(dimension);
Thread.sleep(3000);
driver.manage().window().maximize();
Thread.sleep(3000);
driver.quit();


}
@Test
/*
打开chrome浏览器
获取URL
校对获取到的URL是否为百度界面
等待3S
退出百度
*/
public void browesurl() throws InterruptedException {

driver.get("https://www.baidu.com");
String url = driver.getCurrentUrl();
System.out.println("获取到的URL是:" + url);
Assert.assertEquals(url, "https://www.baidu.com/");
Thread.sleep(3000);

}
@AfterMethod
public void browesquit(){
driver.quit();
}
}

 

posted @ 2018-04-15 16:46  Daisyjm  阅读(808)  评论(0编辑  收藏  举报