用selenium实现用谷歌浏览器打开指定网址

一:前期准备

  需要下载两个jar包(我这里是2.25.0版本的,可以在网上下载最新的)和一个exe文件

           1:selenium-java-2.25.0.jar

           2:selenium-server-standalone-2.25.0.jar

           3:chromedriver.exe

二:导入包

  1:在新建的项目下,新加一个lib文件夹,将上面提到的那两个包复制进去

          用selenium实现用谷歌浏览器打开指定网址_第1张图片

   2:对lib文件夹下的jar文件进行鼠标右键操作(如下图所示),将包导入到项目中,


三:打开谷歌浏览器访问相关url

  下方的这部分可以实现用自动化的用谷歌浏览器打开相应的网站。

   注意,将chromedriver.exe文件放在某个目录中,然后在下方代码块的第二行来进行配置,这一部分必不可少。

		WebDriver	driver;
		
		System.setProperty("webdriver.chrome.driver","E:/seleniumTest/chromedriver.exe");//这一步必不可少

		driver = new ChromeDriver();

		driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);

		driver.get("http://192.168.197.241");

   当然,有时候这样配置也会出现打开谷歌浏览器失败的问题,那可以将chromedriver.exe文件直接放在谷歌浏览器的安装目录下,然后在web上进行配置,

                比如在我本地环境下是:System.setProperty("webdriver.chrome.driver","C:/Program Files/Google/Chrome/Application/chromedriver.exe");

三:对web页面进行简单的输入用户名和密码进行登陆

   经过上方的操作之后,可以对web页面的空间进行一些操作了,下面我贴出的测试的代码实现某个网站的简单登陆功能

  Test.java文件

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

import test.Login;

public class Test {


	//private boolean treeGenerated = false;

	public static void main(String[] args) {
		WebDriver	driver;
		
		System.setProperty("webdriver.chrome.driver","E:/seleniumTest/chromedriver.exe");//这一步必不可少

		driver = new ChromeDriver();

		driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);

		driver.get("http://11.11.11.23");
		// wait for page loaded
		//这里开始就可以自由的对web的各个空间进行自动化操作啦
		(new WebDriverWait(driver, 10))
				.until(new ExpectedCondition() {
					public WebElement apply(WebDriver d) {
						return d.findElement(By.id("login"));
					}
				});
		driver.manage().deleteAllCookies();
		Login login = new Login(driver);
		login.login();

	}
	

}


  Login.java文件

package test;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

public class Login {
	WebDriver	driver;

	WebElement	loginBtn;
	WebElement	userName;
	WebElement	password;
	public Login(WebDriver driver){
		this.driver = driver;
        //获取页面的id节点
		loginBtn = driver.findElement(By.id("login"));
		userName = driver.findElement(By.id("userName"));
		password = driver.findElement(By.id("password"));
        
	
	}
	public void login(){
        //对页面的输入框和按钮进行点击
		userName.clear();
		password.clear();
		userName.sendKeys("zhangsan");
		password.sendKeys("123456");
		loginBtn.click();
		// wait for page loaded
		(new WebDriverWait(driver, 10))
		    .until(new ExpectedCondition() {
			 public WebElement apply(WebDriver d) {
				return d.findElement(By.id("mainPage"));
			}
		});
        driver.switchTo().defaultContent();
        driver.switchTo().frame(driver.findElement(By.id("mainPage")));	
	}
}


你可能感兴趣的:(selenium)