Selenium (4) —— Selenium是什么? WebDriver是什么?做什么?(101 Tutorial)
Selenium (4) —— Selenium是什么? WebDriver是什么?做什么?(101 Tutorial)
selenium版本: v2.48.0 (Standalone Selenium Server)
selenium IDE版本: 2.9.1
firefox版本: 39.0.3
参考来源:
Understanding Selenium IDE vs Selenium RC
Selenium Tutorial: Learn Selenium WebDriver
Selenium是什么?
“Selenium”是一个项目的名字,它包括了一组工具和API:Selenium IDE,Selenium RC,Selenium WebDriver,和Selenium Grid。Selenium项目主页:seleniumhq.org
Selenium IDE 是一个Firefox的插件,这个插件可以方便用户录制和回放浏览器上的操作。
Selenium-RC 是Selenium项目的第一个工具,它可以自动化浏览器中的Web应用。这个项目已经不在更新,新的推荐替代为WebDriver。
Selenium WebDriver 是一个支持浏览器自动化的工具。它包括一组为不同语言提供的类库和“驱动”(drivers)可以使浏览器上的动作自动化
Selenium Grid 可以使我们在远程多个浏览器,多台主机上进行自动化测试
WebDriver是什么?
WebDriver为很多语言提供类库:Java,C#,Ruby,JavaScript,Python,PHP,Perl和其他语言。这样就可以使使用WebDriver的开发人员使用自己最熟悉的语言,而不需要去学习WebDriver独有的脚本语言,使用WebDriver就像在自己项目中使用一个第三方库一样。
WebDriver用“驱动”(driver)去控制不同的浏览器。目前驱动支持的浏览器包括Firefox,Chrome,Safari和IE。微软正在为Mcirosoft Edge研发新的driver。Firefox的driver是内置的,所以Firefox是多数项目进行自动化测试的首选。
WebDriver与“驱动”(driver)间用JSON协议进行通信,这种方式已经成为W3C标准。这就意味着,浏览器厂商会更愿意在生产他们自己的drivers时去满足支持WebDriver标准。即希望微软会为IE driver负责,苹果会为Safari的driver负责。
WebDriver还有一个移动驱动叫做Appium,它允许测试代码在移动设备和平板上运行。
因为WebDriver有Selenium Grid,云服务提供商可以为我们提供多种不同版本的浏览器及操作系统环境,让我们的测试在不同环境组合下运行。这种服务通常需要付费,但是与自己构建具有不同操作系统和不同浏览器的grid使用的时间和资源成本相比,还是负担得起的。
本质上Selenium是一个生态系统,我们可以进行本地桌面,本地移动设备,跨平台测试,我们不需要使用Windows,Mac或是Linux操作系统。我们可以选择自己项目团队最合适的编程语言。我们可以并行或远程执行我们的测试。所有需要做的就是学习如何使用WebDriver。
获取更多关于Selenium和自动化测试的信息可以访问课程web application testing with Selenium
WebDriver干什么?
WebDriver可是使浏览器自动化。WebDriver可以为我们打开URL与渲染出的页面进行交互:
- 新建一个浏览器实例
- 在浏览器中打开一个URL
- 点击页面上的链接
- 在字段中输入信息
- 在页面中执行JavaScript
WebDriver不是一个测试REST APIs、SOAP APIs或数据库的工具。
它是一个自动化浏览器的工具。
因为WebDriver本质上是一个库,我们可以将其与其他库一起使用,调用其他API或者对数据库进行操作。
通常WebDriver与其他库一起使用,访问数据库检查结果,使用REST库进行API调用,然后在WebDriver页面上检查结果。
结束
Selenium (4) —— Selenium是什么? WebDriver是什么?做什么?(101 Tutorial)的更多相关文章
- JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)
JMeter (1) -- JMeter与WebDriver安装与测试(101 Tutorial) 主要内容 JMeter安装 WebDriver安装 一个简单的JMeter+WebDriver示例 ...
- JMeter (2) —— JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial)
JMeter (2) -- JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial) 主要内容 JMeter与WebDriver测试用户登陆以CAS SSO为例 环 ...
- pycharm + selenium + python 提示 Unresolved reference 'webdriver' 解决办法
尝试使用python + selenium + pycharm 做自动化测试, 命令行pip install selenium 安装了selenium.但是使用pycharm 新建一个测试项目后并新建 ...
- Selenium (2) —— Selenium WebDriver + Grid2(101 Tutorial)
Selenium (2) -- Selenium WebDriver + Grid2(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standa ...
- selenium 参数设置-window.navigator.webdriver
selenium 参数设置 selenium启动chrome基本上与真实环境类似,但有一些变量还是不一样,需要注意. 有些网站通过这些参数识别爬虫. window.navigator.webdrive ...
- Selenium (3) —— Selenium IDE + Firefox录制登录脚本(101 Tutorial)
Selenium (3) -- Selenium IDE + Firefox录制登录脚本(101 Tutorial) selenium IDE版本: 2.9.1 firefox版本: 39.0.3 参 ...
- Selenium (1) —— Selenium安装与测试(101 Tutorial)
Selenium (1) -- Selenium安装与测试(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standalone Selenium ...
- 【selenium】- selenium简介
本文由小编根据慕课网视频亲自整理,转载请注明出处和作者. 1. Selenium的来历 2. Selenium家庭成员 Selenium RC: Selenium 1 Selenium Webdriv ...
- 自动化测试模型 Selenium IDE Selenium Gird2
1.线性测试 每个测试脚本相对独立,且不产生其他依赖与调用,其实就是单纯的来模拟用户完整的 操作场景.前一篇所写的测试脚本就属于线性测试. 优点:每个脚本完整且独立 缺点:测试用例的开发与维护成本高 ...
随机推荐
- Shell脚本:向磁盘中批量写入数据
一.关于本文 工作要做的监控系统需要监控磁盘空间的使用率并报警.在测试这个功能的时候需要模拟两个场景:一是磁盘空间不断增长超过设定的阈值时,需要触发报警机制:二是磁盘空间降落到低于报警阈值的时候,不再 ...
- [转]Servlet 单例多线程
Servlet如何处理多个请求访问? Servlet容器默认是采用单实例多线程的方式处理多个请求的: 1.当web服务器启动的时候(或客户端发送请求到服务器时),Servlet就被加载并实例化(只存在 ...
- 腾讯云服务器 - 定时备份MariaDB/MySQL
数据库数据备份尤为重要,而我们不会人工手动去备份,这样会很麻烦,我们都是通过服务器每日自定运行来做的,设置一个定时时间即可 首先我们看一下mysqldump这个文件的位置: 可以看到目录在 /usr/ ...
- IOS使用AVAudioPlayer播放mp3歌曲文件并监听来电打断
本实例实现了AVAudioPlayer播放mp3歌曲文件,实现了播放.暂停.继续操作,音乐音量控制.播放进度显示,同时监听来电打断事件 一.控件初始化 - (void)viewDidLoad { [s ...
- Vivado神器之DocNav
Vivado2014安装完成以后会有2个文件出现在桌面上,具体如下图: 上一个是vivado的软件,是主要的工具,但是一定不要忽略下面一个DocNav,今天我要讲的就是这个工具,打开一个会看到这样一个 ...
- Xilinx vivado迅雷下载地址(所有版本)
注:其实该方法适用于提取Xilinx官网的任意工具的任意版本的迅雷下载地址 ①进入Xilinx官网,进入Device->Design Tools,选择你想要下载的任意工具.②进入新web页面,右 ...
- 【Unity】3.3 用3ds Max 2015制作模型并将其导入到Unity
分类:Unity.C#.VS2015 创建日期:2016-04-05 一.常用三维软件简介 由于游戏引擎本身的建模功能相对较弱,无论是专业性还是自由度都无法同专业的三维软件相比,所以大多数游戏中的模型 ...
- J2EE--Servlet生命周期与原理
Servlet是在server上执行的小程序.而在java中应用程序多是在容器中进行生命周期的管理(这里指Tomact容器). Servlet主要的架构图 首先是 web页面通过提交表单 tomact ...
- 如何从angular2中的url获取查询参数?
问题描述 我使用angular2.0.0-beta.7.当组件在像”/path?query=value1″这样的路径上加载时,它被重定向到”/path”.为什么删除了GET参数?如何保留参数? 路由器 ...
- 关于CAE的那点儿破事儿【二】
前面在<关于CAE的那点破事儿>一文中,主要提到了CAE是什么.CAE能做些什么.人在CAE应用中的作用以及CAE从业中应当具有哪些基本素质.然而CAE是一把双刃剑,如果不能在工程应用中很 ...