java之web自动化环境搭建

环境搭建:

一、Selenium安装

pip install selenium

可使用以下命令查看是否安装成功:

pip show selenium

二、谷歌浏览器安装

如果能打开官网下载最好:https://www.google.cn/chrome/

如果不能,推荐一个网址:https://liulanqi.lanzous.com/iBdUJfh7zod

下载正式版/稳定版,然后安装即可,安装路径使用默认的。

三、谷歌驱动安装,安装 chromedriver

谷歌浏览器右上角三个点,帮助,关于,查看谷歌浏览器版本

chromedriver下载

http://npm.taobao.org/mirrors/chromedriver/

找到自己对应的版本并下载,如果有多个版本的话,最大的版本号相同即可,可以选择最新的。比如 86.1  86.2  86.3,我们可以选择 86.3

 

下载完成后解压,得到 chromedriver.exe,将其放入 Python 安装路径下的Scripts目录。接下来我们运行一个小的案例

 

运行以上脚本,最终打开百度网址搜索 123 ,证明运行成功。

以上,windows 系统下的 selenium 环境安装就完成了。

 

 

pom.xml文件中需要添加selenium依赖

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <version.maven.compiler>2.3.2</version.maven.compiler>
        <version.maven.surefire>2.12</version.maven.surefire>
        <java.version>1.8</java.version>
        <junit.version>5.1.1</junit.version>
        <aspectj.version>1.8.10</aspectj.version>
        <selenium.verson>3.0.0</selenium.verson>
    </properties>


    <dependencies>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-api</artifactId>
        <version>${selenium.verson}</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-chrome-driver</artifactId>
        <version>${selenium.verson}</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-firefox-driver</artifactId>
        <version>${selenium.verson}</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-ie-driver</artifactId>
        <version>${selenium.verson}</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>${selenium.verson}</version>
    </dependency>
    </dependencies>

 一些页面操作方法

package com.web_java01;

import org.openqa.selenium.By;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.Point;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

import java.awt.*;

public class web_test01 {
    @Parameters(value = {"browserType"})
    @Test
    public  void test(String browserType) throws InterruptedException {
        System.out.println("浏览器为:"+browserType);  //浏览器为:filefox
        // 指定浏览器驱动路径
        System.setProperty ( "webdriver.chrome.driver", "driver\chromedriver.exe" );
        WebDriver driver = new ChromeDriver();
        //访问百度
        driver.get("http://www.baidu.com");
        //窗口最大化
        WebDriver.Window window = driver.manage().window();
        window.maximize();
        //获取窗口高度与宽度
        System.out.println("高度:"+window.getSize().height+",宽度:"+window.getSize().width);
        //根据坐标,窗口显示在指定的位置
        window.setPosition(new Point(200,500));
        Thread.sleep(2000);
        //设置窗口的大小
        window.setSize(new Dimension(200,600));
        //输入123
        driver.findElement(By.id("kw")).sendKeys("123");
        //百度搜索一下
        driver.findElement(By.id("su")).click();
        //设置强等待
        Thread.sleep(3000);
        //关闭浏览器
        driver.quit();
    }
}

还有导航栏,刷新等操作方法

package com.web_java01;

import org.openqa.selenium.By;
import org.openqa.selenium.Dimension;
import org.openqa.selenium.Point;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

import java.awt.*;

public class web_test02 {
    @Parameters(value = {"browserType"})
    @Test
    public  void test(String browserType) throws InterruptedException {
        System.out.println("浏览器为:"+browserType);  //浏览器为:filefox
        // 指定浏览器驱动路径
        System.setProperty ( "webdriver.chrome.driver", "driver\chromedriver.exe" );
        WebDriver driver = new ChromeDriver();
        //访问百度
        driver.get("http://www.baidu.com");
        //输入123
        driver.findElement(By.id("kw")).sendKeys("123");
        //百度搜索一下
        driver.findElement(By.id("su")).click();
        //再访问外卖网站
        driver.get("http://121.41.14.39:8082/shop/index.html#/login");
        //再进行导航栏后退操作
        driver.navigate().back();
        Thread.sleep(1000);
        //再进行导航栏前进操作
        driver.navigate().forward();
        //设置强等待
        Thread.sleep(3000);
        //刷新当前页面
        driver.navigate().refresh();
        //关闭浏览器
        driver.quit();
    }
}
原文地址:https://www.cnblogs.com/zhaobobo001/p/14652830.html