ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Selenium工具的各个组件以及演变历史你都了解吗

2021-04-27 16:03:19  阅读:155  来源: 互联网

标签:WebDriver 浏览器 演变 driver Selenium 支持 Server 组件


Selenium是一款用于Web应用程序测试的工具,支持多平台、多浏览器、多语言去实现自动化测试。

Selenium的特点如下:

  • 开源,免费

  • 多浏览器支持:Firefox、Chrome、IE、Opera、Edge等

  • 多平台支持:Linux、Windows、Mac

  • 多语言支持:Java、Python、Ruby、C#、JavaScript等

  • 支持分布式执行

Selenium到目前为止已经经历了三个版本,Selenium 1.0 、Selenium 2.0和Selenium 3.0。

Selenium 1.0

Selenium IDE:早期是嵌入到Firefox浏览器中的一个插件,现在也支持Chrome浏览器了,能够实现简单的浏览器操作的录制与回放功能,并支持导出成对应语言的测试脚本。

Selenium Grid:负责运行脚本,支持多机器不同环境之间运行相同的用例,提升测试效率。

Selenium RC:分为Client和Server端,Client负责编写测试脚本,用来控制Server库。Server负责控制浏览器的行为。Server主要包含三部分:Launcher、Http Proxy和Core。Core是被嵌入到浏览器页面中的,通过一堆javascript函数就,就可以实现对浏览器的操作。Launcher不明思议就是用来启动浏览器,把core加载到浏览器页面中,并把浏览器的代理设置为Selenium Server的 Http Proxy.

Selenium 2.0:

 

Selenium2.0中加入了WebDriver,WebDriver是通过原生浏览器支持或者扩展去直接控制浏览器。WebDriver针对各个浏览器而开发,取代了嵌入到被测web应用中的javascript,与浏览器紧密集成,因此支持创建更高级的测试,避免了javascript安全模型导致的一些限制。

Selenium与WebDriver 原始属于两个不同的项目,后期才合并成为一个框架。

编写第一个自动化脚本:

打开浏览器,访问百度首页,然后输入Selenium2,点击搜索按钮 

from selenium import webdriver

# 获取浏览器驱动
driver = webdriver.Chrome()  
# 打开百度首页
driver.get('http://www.baidu.com')  
# 在搜索框输入Selenium2
driver.find_element_by_id('kw').send_keys('Selenium2')  
# 点击搜索按钮
driver.find_element_by_id('su').click()

 

运行脚本效果如下:

 

 

Selenium 3.0:

selenium3.0跟2.0版本相比,基本上没太大变化。

  • 应该是去掉了Selenium RC 

  • Selenium3.0只支持Java8版本以上,因此需要安装Java8及以上版本

  • Selenium3.0中的Firefox驱动独立了,同时支持Edge浏览器。可以将各个浏览器驱动放一个文件夹里面,然后设置环境变量。

标签:WebDriver,浏览器,演变,driver,Selenium,支持,Server,组件
来源: https://blog.51cto.com/u_7739395/2736931

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有