selenium3介绍

清风的故事说 清风的故事说     2022-10-30     168

关键词:

1.  简介

Selenium是用于测试 Web应用程序用户界面 (UI)的常用框架。它是一款用于运行端到端功能测试的超强工具。您可以使用多个编程语言编写测试,并且 Selenium能够在一个或多个浏览器中执行这些测试。

1.1  历史

 

  • Selenium1.0

 

  2004年,ThoughtWorks公司的JasonHuggins和他所在的团队采用Javascript编写一种测试工具来验证浏览器页面的行为。这个JavaScript类库就是Selenium core,同时也是seleniumRC、Selenium IDE的核心组件。

                    技术分享图片技术分享图片

  Selenium 1.0 = Selenium IDE + Selenium Grid + SeleniumRC

Selenium IDE

Selenium IDE是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。

Selenium Grid

Selenium Grid是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快Web-App的功能测试。利用Grid可以很方便地实现在多台机器上和异构环境中运行测试用例。

Selenium RC

Selenium RC(Remote Control)是Selenium家族的核心部分。Selenium RC 支持多种不同语言编写的自动化测试脚本,通过Selenium RC的服务器作为代理服务器去访问应用,从而达到测试的目的。

Selenium RC分为Client Libraries和Selenium Server。Client Libraries库主要用于编写测试脚本,用来控制Selenium Server的库。Selenium Server负责控制浏览器行为。

 

 

  • Selenium 2.0

 

2006年,Google的工程师SimonStewart发起了WebDriver的项目;因为长期以来Google一直是Selenium的重度用户,但却被限制在有限的操作范围内。

Selenium RC是在浏览器中运行JavaScript应用,使用浏览器内置的JavaScript翻译器来翻译和执行selenese命令(selenese是Selenium命令集合)。

WebDriver是通过原生浏览器支持或者浏览器扩展来直接控制浏览器。WebDriver针对各个浏览器而开发,取代了嵌入到被测Web应用中的JavaScript,与浏览器紧密集成,因此支持创建更高级的测试,避免了JavaScript安全模型导致的限制。除了来自浏览器厂商的支持之外,WebDriver还利用操作系统级的调用,模拟用户输入。

2011年,Selenium和Webdriver合并, Selenium2.0诞生。

Selenium与WebDriver原是属于两个不同的项目,WebDriver的创建者Simon Stewart早在2009年8月的一份邮件中解释了项目合并的原因。

Selenium与WebDriver合并原因:为何把两个项目合并?部分原因是WebDriver解决了Selenium存在的缺点(例如能够绕过JavaScript沙箱,我们有出色的API),部分原因是Selenium解决了WebDriver存在的问题(例如支持广泛的浏览器),部分原因是因为Selenium的主要贡献者和我都觉得合并项目是为用户提供最优秀框架的最佳途径。

Selenium 2.0 = Selenium 1.0 + WebDriver

需要强调的是,在Selenium 2.0中主推的是WebDriver,可以将其看作SeleniumRC的替代品。因为Selenium为了保持向下的兼容性,所以在Selenium 2.0中并没有彻底地抛弃Selenium RC。

Selenium 2具有来自WebDriver的清晰面向对象 API,并能以最佳的方式与浏览器进行交互。Selenium 2不使用 JavaScript沙盒,它支持多种浏览器和多语言绑定。Selenium 2为下列程序提供驱动程序:

  • Mozilla Firefox
  • Google Chrome
  • Microsoft Internet Explorer
  • Apple iPhone
  • Android browsers
  • ……

借助 Selenium 2,您可使用 Java、C#、Ruby、和 Python 编写测试。Selenium2还提供基于 HtmlUnit的无外设驱动,是用于测试 Web应用程序的 Java框架。HtmlUnit运行速度特别快,但它不是一个真正与真实浏览器相关联的驱动。

  • Selenium3.0

2016年7月,Selenium3.0悄悄发布第一个beta版。

Selenium 3.0 = Selenium 2.0 + Selenium RC(Remote Control)

 

1.2 Selenium3现状

1.2.1 更新

  • 去掉了对selenium rc的支持。
  • 全面拥抱java 8。
  • 支持macOS (Sierra or later),支持官方的safaridriver
  • 只支持ie 9.0版本以上。

尽管firefox driver非常的稳定高效,但firefoxdriver毕竟是google实现的。geckodriver的出现是必然的结果,因为最新版本的firefox换引擎了,老的firefox driver应该是不支持新引擎的。

1.2.2 重要意义

  • webdriver协议现在已经成为业内公认的浏览器ui测试的标准实现。webdriver协议是google对开源测试领域的重要贡献。
  • 各种官方支持意味着以后的浏览器ui测试的速度和稳定性会有较大的提升。
  • 浏览器ui自动化测试已经成为了行业标配。
  • selenium专注web测试。

selenium3(代码片段)

...归测试,自动化测试,重复性的操作行为测试行为. 安装Selenium3:  python版:pipinstallseleniumpiplistuninstall  java版:#去官网下载selenium#ht 查看详情

selenium3+python3环境搭建

selenium3+python3环境搭建教程图解出处:https://m.jb51.net/article/152224.htm这篇文章主要介绍了selenium3+python3环境搭建教程图解,需要的朋友可以参考下1、首先安装火狐浏览器 2、搭建python环境安装python,安装的时候把path选好,就不用... 查看详情

selenium3+python-xpath定位(代码片段)

 什么是xpath呢?官方介绍:XPath即为XML路径语言,它是一种用来确定XML1(标准通用标记语言3的子集)文档中某部分位置的语言。反正小编看这个介绍是云里雾里的,通俗一点讲就是通过元素的路径来查找到这个元素的,相当... 查看详情

第7章unittest扩展-7.1html测试报告-selenium3自动化测试

第7章unittest扩展在第6章中,我们介绍了unittest的主要功能,但是如果只用它来写Web自动化测试,则仍稍显不足。例如,它不能生成HTML格式的报告、它不能提供参数化功能等。不过,我们可以借助第三方扩展来弥补这些不足。本... 查看详情

selenium3+firefox报错

Thepathtothedriverexecutablemustbesetbythewebdriver.gecko.driversystemproperty报这个错,是因为你使用了selenium3+Firefox。在selenium3中,使用Firefox,需要添加驱动。 https://github.com/mozilla/geckodriver/releases/tag/v0.9. 查看详情

java+selenium3.x实现web自动化-1.自动化准备

(一)自动化准备说明:本文主要记录了基于公司现有项目(一个电子商务平台),从0开始实现UI自动化的历程。从准备阶段,部分内容直接省略了基础知识,一切以最终做成自动化项目为目标,难免会有晦涩之处。文章主要用于... 查看详情

selenium3搭建环境

系统:win764位浏览器:ie964位chrome7032位firefox6364位python版本:3.6.5Windowsx86executableinstallerselenium版本:selenium3.141.01、安装指定版本selenium3pipinstallselenium==3.141.02、驱动与浏览器版本对应关系1)IE9+64位驱动名称:IEDriverServer.e 查看详情

selenium3自动化测试26显式等待

解Python3+Selenium3如何解决元素加载缓慢的情况解Python3+Selenium3如何解决元素加载缓慢的情况 查看详情

selenium3.0自动化测试

...个圣诞节发布。  转眼的三年过去了,目前已经发布到Selenium3.0beta4版本,这将会是Selenium3.0正式版本前的最后一个测试版本。  尽管我对Selenium3.0比较失望(本以为它会集成移动端的自动化测试)。但是,它还是做了一些变... 查看详情

selenium3降版为selenium2

...图查看版本。发现默默安装的selenium是最新版本,3.8.0,selenium3不再默认支持浏览器,需要驱动包的支持方可。此时没有驱动包支持因为此报错。目前我还是入门阶段,下载的资料是selenium2框架的,因此选择selenium3降版为selenium2.... 查看详情

selenium3快速入门:如何编写第一个脚本helloworld!

从0开始编写Selenium3脚本。解决自动化小白们最害怕的环境配置等问题,从最简单脚本开始,从最干净的环境开始,结果导向,一步步到自动化框架的实践过程。所需工具:1.IDE+JDK+浏览器(可依实际项目自定义)2.Selenium3驱动及jar包... 查看详情

第5章自动化测试模型-selenium3自动化测试(代码片段)

在介绍自动化测试模型之前,我们先来了解库、框架和工具之间的区别。5.1基本概念1.库库的英文单词是Library,库是由代码集合成的一个产品,可供程序员调用。面向对象的代码组织形成的库叫类库,面向过程的代码组织形成的... 查看详情

selenium3+生成htmltestrunner测试报告+发送带附件邮箱

1、导入各功能模块fromHTMLTestRunnerimportHTMLTestRunnerfromemail.mime.textimportMIMEText#发送邮件正文fromemail.mime.multipartimportMIMEMultipart#发送邮件附件fromemail.headerimportHeaderimportsmtplibimportunittestimportti 查看详情

selenium3踩坑--move_to_element()报错

 问题:selenium3使用move_to_element()报错,报错信息如下图所示:网上没有找到合适的解决办法,回退到稳定的selenium2可以解决。pipinstallselenium==2.53.6selenium和firefox版本对应关系:selenium2+firefox46及以下版本selenium3+firefox47及以上版... 查看详情

selenium3下载配置

s1-s3发展历程 :http://www.cnblogs.com/hhudaqiang/p/6550135.html官网地址:http://www.seleniumhq.org/文档:http://www.seleniumhq.org/docs/03_webdriver.jsp#webdriver-and-the-selenium-serverhttps://github.com/mo 查看详情

1-selenium3安装

pipinstallselenium需要安装浏览器驱动https://blog.csdn.net/weixin_38917807/article/details/81388261下载好的驱动放到浏览器安装目录下面C:ProgramFilesGoogleChromeApplication,将此目录添加path中。或者直接把浏览器驱动拷贝到python安装目录selenium下载超... 查看详情

selenium3.0远程模式

准备工作:1.安装chrome浏览器2.下载selnium-server-standalone-3.0.1.jar步骤:1.java-jarselnium-server-standalone-3.0.1.jar (默认ip:localhost、port:4444)  PS:作为单个server启动时,千万不要画蛇添足加个-rolehub/node2. 测试脚 查看详情

最新selenium3.141.0匹配的火狐版本

原网址:https://blog.csdn.net/liuyukuan/article/details/84594440 火狐51版火狐历史版本下载  https://ftp.mozilla.org/pub/firefox/releases/ 查看详情