《手把手教你》系列基础篇之(三)-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工具基础使用教程

相关文章
|
1月前
|
数据采集 测试技术 Python
自动化淘宝秒杀:使用Selenium WebDriver的实战指南
本文详细介绍了如何利用Selenium WebDriver自动化淘宝秒杀操作,包括环境配置、代码实现及注意事项,旨在帮助读者提升秒杀成功率,同时提醒合理使用以遵守平台规则。
85 8
|
2月前
|
数据采集 存储 JavaScript
自动化数据处理:使用Selenium与Excel打造的数据爬取管道
本文介绍了一种使用Selenium和Excel结合代理IP技术从WIPO品牌数据库(branddb.wipo.int)自动化爬取专利信息的方法。通过Selenium模拟用户操作,处理JavaScript动态加载页面,利用代理IP避免IP封禁,确保数据爬取稳定性和隐私性。爬取的数据将存储在Excel中,便于后续分析。此外,文章还详细介绍了Selenium的基本设置、代理IP配置及使用技巧,并探讨了未来可能采用的更多防反爬策略,以提升爬虫效率和稳定性。
159 4
|
6天前
|
Web App开发 数据采集 JavaScript
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
本文介绍了Selenium、Chrome DevTools及Chrome DevTools Protocol (CDP) 的基本功能与应用。Selenium是一款开源自动化测试工具,适用于网页端应用程序测试和数据采集,具备跨平台特性。Chrome DevTools内置浏览器中,提供调试、分析Web应用程序的功能,包括元素、控制台、源代码和网络选项卡等。CDP是一套用于与Chromium内核浏览器通信的API,支持自动化测试和性能分析。文中还展示了Selenium与CDP结合使用的示例,如捕获网络请求数据和打印网页内容,并推荐了相关书籍和资源以供深入学习。
80 39
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
|
15天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
65 19
Selenium IDE:Web自动化测试的得力助手
|
2月前
|
Java 测试技术 C#
自动化测试之美:从Selenium到Appium
【10月更文挑战第3天】在软件开发的海洋中,自动化测试如同一艘航船,引领着质量保证的方向。本文将带你领略自动化测试的魅力,从Web端的Selenium到移动端的Appium,我们将一探究竟,看看这些工具如何帮助我们高效地进行软件测试。你将了解到,自动化测试不仅仅是技术的展示,更是一种提升开发效率和产品质量的智慧选择。让我们一起启航,探索自动化测试的世界!
|
2月前
|
JavaScript 前端开发 测试技术
精通Selenium:从基础到高级的网页自动化测试策略
【10月更文挑战第6天】随着Web应用变得越来越复杂,手动进行功能和兼容性测试变得既耗时又容易出错。自动化测试因此成为了现代软件开发不可或缺的一部分。Selenium是一个强大的工具集,它支持多种编程语言(包括Python),允许开发者编写脚本来模拟用户与Web页面的交互。本文将带领读者从Selenium的基础知识出发,逐步深入到高级的应用场景,通过丰富的代码示例来展示如何高效地进行网页自动化测试。
534 5
|
2月前
|
XML Java Maven
在 Cucumber 测试中自动将 Cucumber 数据表映射到 Java 对象
在 Cucumber 测试中自动将 Cucumber 数据表映射到 Java 对象
69 7
|
2月前
|
Web App开发 IDE 测试技术
自动化测试的利器:Selenium 框架深度解析
【10月更文挑战第2天】在软件开发的海洋中,自动化测试犹如一艘救生艇,让质量保证的过程更加高效与精准。本文将深入探索Selenium这一强大的自动化测试框架,从其架构到实际应用,带领读者领略自动化测试的魅力和力量。通过直观的示例和清晰的步骤,我们将一起学习如何利用Selenium来提升软件测试的效率和覆盖率。
|
1月前
|
Web App开发 设计模式 JavaScript
自动化测试之美:如何利用Selenium实现Web应用的高效测试
【10月更文挑战第29天】在软件开发的世界中,测试是确保产品质量的关键步骤。本文将带你了解如何使用Selenium这一强大的自动化测试工具,提高Web应用测试的效率和准确性。通过实际案例,我们将探索Selenium的核心功能及其在现代软件开发中的应用,旨在帮助读者掌握自动化测试的精髓,从而提升软件测试工作的整体效能。
47 0
|
2月前
|
测试技术 数据安全/隐私保护 开发者
自动化测试的奥秘:如何用Selenium和Python提升软件质量
【9月更文挑战第35天】在软件开发的海洋中,自动化测试是那艘能引领我们穿越波涛的帆船。本文将揭开自动化测试的神秘面纱,以Selenium和Python为工具,展示如何构建一个简单而强大的自动化测试框架。我们将从基础出发,逐步深入到高级应用,让读者能够理解并实现自动化测试脚本,从而提升软件的质量与可靠性。