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

    xiaoxiao2021-03-25  159

    一:前期准备

      需要下载两个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文件夹,将上面提到的那两个包复制进去

              

       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<WebElement>() { 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<WebElement>() { public WebElement apply(WebDriver d) { return d.findElement(By.id("mainPage")); } }); driver.switchTo().defaultContent(); driver.switchTo().frame(driver.findElement(By.id("mainPage"))); } }

    转载请注明原文地址: https://ju.6miu.com/read-9026.html

    最新回复(0)