1)展示如何封装selenium的api,使其符合我们的使用需求;
2)展示如何使用page object模式写selenium脚本;
3)展示如何即时查找元素,用以操作ajax页面;
2、封装selenium的api
以下是BasePage.java的代码;
用于展示方法,所以只封装了部分selenium的api;
1 package com.ddg.fundstransfer.tools; 2 3 import org.openqa.selenium.By; 4 import org.openqa.selenium.WebDriver; 5 import org.openqa.selenium.WebElement; 6 7 import java.util.concurrent.TimeUnit; 8 9 /** 10 * Created by Terry on 2017/9/27. 11 */ 12 public class BasePage { 13 WebDriver driver; 14 WebElement element; 15 public BasePage(WebDriver driver){ 16 this.driver=driver; 17 this.driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 18 } 19 public WebDriver getDriver(){ 20 return this.driver; 21 } 22 public WebElement findElement(CustomLocator locator){ 23 if(locator.type.equals("css")) { 24 this.element = driver.findElement(By.cssSelector(locator.value)); 25 } 26 return element; 27 } 28 public String getTitle(){ 29 return this.driver.getTitle(); 30 } 31 public void quit(){ 32 this.driver.quit(); 33 } 34 }