《手把手教你》系列基础篇之(三)-java+ selenium自动化测试- 启动三大浏览器(上)(详细教程)

简介: 【2月更文挑战第12天】《手把手教你》系列基础篇之(三)-java+ selenium自动化测试- 启动三大浏览器(上)(详细教程) 前边宏哥已经将环境搭建好了,今天就在Java项目搭建环境中简单地实践一下: 启动三大浏览器。按市场份额来说,全球前三大浏览器是:IE.Firefox.Chrome。因此宏哥这里主要介绍一下如何启动这三大浏览器即可,其他浏览器类似的方法,照猫画虎就可以了。

 1.简介

前边宏哥已经将环境搭建好了,今天就在Java项目搭建环境中简单地实践一下: 启动三大浏览器。按市场份额来说,全球前三大浏览器是:IE.Firefox.Chrome。因此宏哥这里主要介绍一下如何启动这三大浏览器即可,其他浏览器类似的方法,照猫画虎就可以了。

2.启动浏览器准备工作

2.1准备工作

创建一个Selenium的Java项目,用来练习,具体步骤如下:

1.打开Eclipse,创建一个名称为Bjhg_Selenium的Java 项目,如下图所示:

image.gif 编辑

2.在Bjhg_Selenium项目下,新建一个文件夹Tools,把Selenium相关包放到这个文件夹下,如下图所示:

image.gif 编辑

3.右键项目,选择Build Path,然后选择Confige Build Path...,弹出框点击Libraries,如下图所示:

image.gif 编辑

4.这里点击Add JARs...,弹出框,选择当前项目下tools这个文件夹里面的selenium-server-standalone-3.4.0.jar,点击OK,效果如下图所示:

image.gif 编辑

准备工作就介绍到这里,下边介绍如何启动三大浏览器。

3.启动Chrome浏览器

3.1chrome和chromedriver版本下载地址及对应关系

【国外】chromedriver所有版本下载地址:http://chromedriver.storage.googleapis.com/index.html

【国内】chromedriver所有版本下载地址:https://npm.taobao.org/mirrors/chromedriver

【国内】chrome所有版本下载地址:Google Chrome 64bit Windows版_chrome浏览器,chrome插件,谷歌浏览器下载,谈笑有鸿儒

【国外】浏览器版本和驱动版本对应关系查看网址:ChromeDriver - WebDriver for Chrome - Downloads

注意:一个大的chromedriver版本里面可能包含的有多个小版本,如果下载的Chromedriver版本和当前使用的chrome浏览器版本不匹配则可以换其他的试试。比如:chromedriver  79版里面有v79.0.3945.16    v79.0.3945.36

3.2驱动Chrome

1.在lessons包下创建类LaunchChrome.java,如下图所示:

image.gif 编辑

2.大致思路:打开Chrome浏览器,访问百度网址,获取网址的title,然后再关闭Chrome浏览器。根据思路进行代码设计,如下图所示:

image.gif 编辑

3.3参考代码,如下:

package lessons;
import java.util.concurrent.TimeUnit;  
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
/**
 * @author 北京-宏哥
 * 公众号: 北京宏哥
 * 2021年6月17日
 */
public class LaunchChrome {
    
    public static void main(String[] args) {  
        
        System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");  
          
        //初始化一个chrome浏览器实例,实例名称叫driver  
        WebDriver driver = new ChromeDriver();  
        //最大化窗口  
        driver.manage().window().maximize();  
        //设置隐性等待时间  
        driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);  
          
        // get()打开一个站点  
        driver.get("https://www.baidu.com");  
        //getTitle()获取当前页面title的值  
        System.out.println("当前打开页面的标题是: "+ driver.getTitle());  
          
        //关闭并退出浏览器  
        driver.quit();  
          
    }  
}

image.gif

4.电脑端的浏览器,如下小视频所示:

5.运行代码,右键Run AS->java Application,控制台输出,如下图所示:

image.gif 编辑

4.启动Firefox浏览器

4.1Firefox和驱动下载地址

selenium2.X最高支持的Firefox版本为46,使用selenium2.X的话不需要下载火狐驱动,只需要配置火狐的启动路径即可。

Selenium3.0开始需下载geckodriver,想使用geckodriver ,Firefox浏览器必须是48或者更高版本。具体的浏览器和浏览器驱动之间的对应关系可在geckodriver下载网站中的版本说明中查看。

所有火狐浏览器版本下载地址:Directory Listing: /pub/firefox/releases/

所有火狐驱动geckodriver版本下载地址:Releases · mozilla/geckodriver · GitHub

4.2驱动Firefox

具体过程和Chrome的差不多,宏哥就不做赘述,将代码贴出来以供参考。

1.参考代码,如下:

package lessons;
import java.util.concurrent.TimeUnit;  
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
/**
 * @author 北京-宏哥
 *  公众号: 北京宏哥
 * 2021年6月17日
 */
public class LuanchFirefox {
     
    public static void main(String[] args) {
        
        //System.setProperty("webdriver.firefox.marionette", ".\\Tools\\geckodriver.exe");
        
        System.setProperty("webdriver.gecko.driver", ".\\Tools\\geckodriver.exe");
        
        //初始化一个火狐浏览器实例,实例名称叫driver
        WebDriver driver = new FirefoxDriver();
        //最大化窗口
        driver.manage().window().maximize();
        //设置隐性等待时间
        driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);
        
        // get()打开一个站点
        driver.get("https://www.baidu.com");
        //getTitle()获取当前页面title的值
        System.out.println("当前打开页面的标题是: "+ driver.getTitle());
        
        //关闭并退出浏览器
        driver.quit();
        
    }
 
}

image.gif

5.启动IE浏览器

5.1IE浏览器驱动下载地址

本人使用的IE和IEDriverServer:

IE浏览器版本:11   IEDriverServer版本:Win32_3.0.0

IE浏览器所有驱动版本下载地址:http://selenium-release.storage.googleapis.com/index.html

5.2驱动IE

具体过程和Chrome的差不多,宏哥就不做赘述,将代码贴出来以供参考。

1.参考代码,如下:

package lessons;
import java.util.concurrent.TimeUnit;  
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
/**
 * @author 北京-宏哥
 *  公众号: 北京宏哥
 * 2021年6月17日
 */
public class LaunchIE {  
      
    public static void main(String[] args) {  
          
        System.setProperty("webdriver.ie.driver", ".\\Tools\\IEDriverServer.exe");  
          
        //初始化一个IE浏览器实例,实例名称叫driver  
        WebDriver driver = new  InternetExplorerDriver(); 
        //最大化窗口  
        driver.manage().window().maximize();  
        //设置隐性等待时间  
        driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);  
          
        // get()打开一个站点  
        driver.get("https://www.baidu.com");  
        //getTitle()获取当前页面title的值  
        System.out.println("当前打开页面的标题是: "+ driver.getTitle());  
          
        //关闭并退出浏览器  
        driver.quit();  
          
    }  
  
}

image.gif

6.小结

宏哥因为之前做过python和selenium,所以没有出现浏览器版本和驱动版本匹配的问题,新手一定要注意这个问题。

好了,今天关于三大浏览器的驱动宏哥就分享到这里,感谢你耐心的阅读。

  每天学习一点,今后必成大神-

往期推荐(由于跳转参数丢失了,所有建议选中要访问的右键,在新标签页中打开链接即可访问):

Appium自动化系列,耗时80天打造的从搭建环境到实际应用精品教程测试

Python接口自动化测试教程,熬夜87天整理出这一份上万字的超全学习指南

Python+Selenium自动化系列,通宵700天从无到有搭建一个自动化测试框架

Java+Selenium自动化系列,仿照Python趁热打铁呕心沥血317天搭建价值好几K的自动化测试框架

Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程

Fiddler工具从基础->进阶->高级,费时100多天吐血整理出这一份全网超详细的入门到精通教程

Pycharm工具基础使用教程

相关文章
|
2天前
|
运维 监控 容灾
实现Java应用的高可用与自动化运维
实现Java应用的高可用与自动化运维
|
3天前
|
Java 测试技术 Apache
《手把手教你》系列基础篇(八十六)-java+ selenium自动化测试-框架设计基础-Log4j实现日志输出(详解教程)
【7月更文挑战第4天】Apache Log4j 是一个广泛使用的 Java 日志框架,它允许开发者控制日志信息的输出目的地、格式和级别。Log4j 包含三个主要组件:Loggers(记录器)负责生成日志信息,Appenders(输出源)确定日志输出的位置(如控制台、文件、数据库等),而 Layouts(布局)则控制日志信息的格式。通过配置 Log4j,可以灵活地定制日志记录行为。
18 4
|
2天前
|
Java 数据库连接 程序员
高效使用Java中的注解实现代码自动化处理
高效使用Java中的注解实现代码自动化处理
|
2天前
|
IDE Java 持续交付
Java中的代码质量检查与自动化工具
Java中的代码质量检查与自动化工具
|
2天前
|
XML Java 测试技术
《手把手教你》系列基础篇(八十七)-java+ selenium自动化测试-框架设计基础-Log4j 2实现日志输出-上篇(详解教程)
【7月更文挑战第5天】Apache Log4j 2是一个日志框架,它是Log4j的升级版,提供了显著的性能提升,借鉴并改进了Logback的功能,同时修复了Logback架构中的问题。Log4j2的特点包括API与实现的分离,支持SLF4J,自动重新加载配置,以及高级过滤选项。它还引入了基于lambda表达式的延迟评估,低延迟的异步记录器和无垃圾模式。配置文件通常使用XML,但也可以是JSON或YAML,其中定义了日志级别、输出目的地(Appender)和布局(Layout)。
|
2天前
|
Java 测试技术 持续交付
如何在Java中实现自动化测试和集成测试
如何在Java中实现自动化测试和集成测试
|
2天前
|
敏捷开发 Java jenkins
实现Java中的自动化测试策略和工具推荐
实现Java中的自动化测试策略和工具推荐
|
3天前
|
JavaScript 测试技术
vue 官方测试工具 unit-jest 实用教程(含实战范例:登录组件的测试)
vue 官方测试工具 unit-jest 实用教程(含实战范例:登录组件的测试)
5 0
|
3天前
|
JavaScript 前端开发
测试框架 Jest 实用教程
测试框架 Jest 实用教程
6 0