selenium +java 多个公用driver问题
Posted wujianqinjian
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium +java 多个公用driver问题相关的知识,希望对你有一定的参考价值。
问题点:太久没有写selenium代码,居然把driver公用的问题忘记了,即:每写一个测试类,执行过程中都会新建一个窗口,这样应该说是非常不专业的。
大概想了一个方法,虽然看起来也不怎么专业,但感觉能用就很开心了。
解决步骤:
1 创建一个获取获取driver的方法getDriver()
2 创建成员变量,将 getDriver()赋值给成员变量
3 其他业务类在使用driver时,都可以通过父类.driver的方式,获取同一个driver
public class Login{
private static final String userName="[email protected]";
private static final String password="123456";
public static final WebDriver driver=getDriver();
public Login(){}
//获取驱动
public static WebDriver getDriver(){
System.setProperty("webdriver.chrome.driver","other/../../../chromedriver.exe");
WebDriver drivers=new ChromeDriver();
return drivers;
}
public static void LoginUser() {
WebDriver driver=Login.driver;
driver.get("http://testAdress.com/#/login");
driver.navigate().refresh();
sleep(1);
driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div[2]/div[2]/div/div[1]/form/div[1]/div/div/input")).sendKeys(userName);
driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div[2]/div[2]/div/div[1]/form/div[2]/div/div[1]/input")).sendKeys(password);
driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div[2]/div[2]/div/div[1]/form/div[4]/button")).click();
}
}
提示:如果有用,请不要照搬,因为只截取了一部分代码,没有将完整的类贴出来!
以上是关于selenium +java 多个公用driver问题的主要内容,如果未能解决你的问题,请参考以下文章
java+selenium+new——同一个标签窗口里 ,访问多个网页的后退driver.navigate().back()前进driver.navigate().forward()刷新drive(代
java+selenium+new——同一个标签窗口里 ,访问多个网页的后退driver.navigate().back()前进driver.navigate().forward()刷新drive(代