一、创建浏览器对象

//谷歌为例

System.setProperty("webdriver.chrome.driver", "src\\drivers\\chromedriver.exe");

WebDriver driver = new ChromeDriver();

二、设置窗口位置、大小

//设置浏览器窗口位置,相对于屏幕左上角(0,0)的位置

Point point = new Point(100, 100);

driver.manage().window().setPosition(point);

//设置浏览器窗口大小

Dimension dimension = new Dimension(500, 500);

driver.manage().window().setSize(dimension);

//获取浏览器窗口位置

Point position = driver.manage().window().getPosition();

System.out.println(position);

//获取浏览器窗口大小

Dimension size = driver.manage().window().getSize();

System.out.println(size);

//浏览器窗口最大化

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

//全屏

driver.manage().window().fullscreen();

三、访问网页操作

//访问网页地址(第一种方式)

driver.get("https://www.hao123.com/");

//访问网页地址(第二种方式)

driver.navigate().to("https://www.baidu.com/");

//网页后退

driver.navigate().back();

//网页前进

driver.navigate().forward();

//刷新网页

driver.navigate().refresh();

四、获取网页信息

//获取当前页面Url

String currentUrl = driver.getCurrentUrl();

System.out.println(currentUrl);

//获取当前页面源码

String pageSource = driver.getPageSource();

System.out.println(pageSource);

//获取当前页面Title

String title = driver.getTitle();

System.out.println(title);

//获取当前窗口句柄

String windowHandle = driver.getWindowHandle();

System.out.println(windowHandle);

//获取当前所有打开窗口的句柄

Set windowHandles = driver.getWindowHandles();

for (String handle : windowHandles) {

System.out.println(handle);

}

五、切换窗口

driver.switchTo().window("要切换的窗口句柄");

六、截图保存

File fileTo = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);

try {

FileInputStream fileInputStream = new FileInputStream(fileTo);

FileOutputStream fileOutputStream = new FileOutputStream("test.png");

byte[] bytes = new byte[1024];

int len = 0;

while ((len = fileInputStream.read(bytes))!=-1){

fileOutputStream.write(bytes);

};

} catch (IOException e) {

e.printStackTrace();

}

七、关闭窗口

//杀掉浏览器进程-谷歌为例(注意:此方法杀掉了所有谷歌进程,包括自己打开的和程序打开的)

WindowsUtils.killByName("chrome.exe");

//关闭当前窗口,如果仅剩一个窗口,则退出浏览器

driver.close();

//退出浏览器

driver.quit();

八、元素定位

1.使用ID定位

WebElement webElement = driver.findElement(By.id("ID值"));

2.使用name定位

WebElement webElement = driver.findElement(By.name("name值"));

List elements = driver.findElements(By.name("name值"));

3.使用链接的全部文字定位

WebElement webElement = driver.findElement(By.linkText("链接的全部文字内容"));

List elements = driver.findElements(By.linkText("链接的全部文字内容"));

4.使用部分链接的文字定位

WebElement webElement = driver.findElement(By.partialLinkText("链接的部分文字内容"));

List elements = driver.findElements(By.partialLinkText("链接的部分文字内容"));

5.使用标签名称定位

WebElement webElement = driver.findElement(By.tagName("页面中的HTML标签名称"));

List elements = driver.findElements(By.tagName("页面中的HTML标签名称"));

6.使用Class名称定位

WebElement webElement = driver.findElement(By.className("页面中的Class属性值"));

List elements = driver.findElements(By.className("页面中的Class属性值"));

7.使用XPath方式定位

WebElement webElement = driver.findElement(By.xpath("XPath定位表达式"));

List elements = driver.findElements(By.xpath("XPath定位表达式"));

8.使用CSS定位

WebElement webElement = driver.findElement(By.cssSelector("CSS定位表达式"));

List elements = driver.findElements(By.cssSelector("CSS定位表达式"));

9.使用jQuery方式定位,先将driver转换为JavascriptExecutor对象,再调用jQuery的find方法查找页面元素,返回List对象

JavascriptExecutor js = (JavascriptExecutor) driver;

List elements =

(List) js.executeScript("return jQuery.find('jQuery定位表达式')");

九、元素操作

WebElement element= driver.findElement(By.id("id值"));

1.清空输入框

element.clear();

2.输入框输入文字

element.sendKeys("Selenium");

3.点击元素

element.click();

4.获取标签名称

String tagName = element.getTagName();

5.获取属性值

String id = element.getAttribute("id");

6.获取CSS属性值

String width = element.getCssValue("width");

7.获取元素是否可见

boolean displayed = element.isDisplayed();

8.获取元素是否可点击

boolean enabled = element.isEnabled();

9.获取元素是否被选中

boolean selected = element.isSelected();

持续更新中...  

参考链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。