selenium原理
讲述 Selenium WebDriver
原理之前,我们先来看下 w3c WebDriver
协议,这里以 ChromeDriver 为例。
WebDriver
术语解释:
- W3C WebDriver 是一个浏览器协议,又称
WebDriver 协议
/WebDriver 规范
/WebDriver API
- Driver 是 WebDriver API 的特定实现,比如 Chrome 浏览器的 ChromeDriver。
- ChromeDriver 是一个可以独立运行的服务器程序,它实现了 WebDriver 协议。
- Selenium WebDriver 是一个基于 WebDriver 协议的 Web 自动化框架。
启动 ChromeDriver
在命令行窗口执行以下命令启动 ChromeDriver。
# 为了方便,建议先切换到 exe 文件所在目录 chromedriver_80.exe -port=12345
ChromeDriver 启动成功后,将得到一个服务器访问地址 http://localhost:12345
。打开任务管理器,我们可以看到 chromedriver_80.exe
进程。
访问 ChromeDriver
1、调用 New Session 接口,创建一个 Session,返回 sessionId=be92a2485bcdb5ca0d3bc44bd0b00a8d。与此同时将打开一个 Chrome 浏览器窗口。
endpoint\_webdriver=
http://localhost:12345
思考题:如果再次调用该接口会发生什么呢?
2、调用 Navigate To 接口,访问百度网站,等价于 Java 客户端的 driver.get("https://www.baidu.com")
。
执行结果:
其他接口类似,不再一一举例。这些步骤是不是和使用 Java/Python 编写测试步骤时似曾相识?总结起来就是两步:
- 第一步:通过 WebDriver 驱动启动一个服务端(每个驱动操作与之对应的浏览器,如 Chrome 驱动操作 Chrome 浏览器)。
- 第二步:客户端调用服务端 HTTP 接口,服务端收到请求后解析请求,执行对应的浏览器操作。
浏览器驱动大部分是各浏览器厂商根据 WebDriver 规范实现的,所以 Selenium 不再需要直接操作浏览器,而是通过 HTTP 接口向驱动发出符合 WebDriver 规范的指令。
Selenium WebDriver
了解了 WebDriver 协议后,我们回过头来看 Selenium WebDriver 的工作原理就简单很多了。
selenium原理相关推荐
- selenium + python自动化测试unittest框架学习(一)selenium原理及应用
unittest框架的学习得益于虫师的<selenium+python自动化实践>这一书,该书讲得很详细,大家可以去看下,我也只学到一点点用于工作中,闲暇时记录下自己所学才能更加印象深刻. ...
- 新鲜角度看问题:从Python角度解析Selenium原理
Selenium工作流程 Selenium工作原理 客户端和服务端之间实际是通过http协议进行通信,服务端的接口文档可参考: https://github.com/SeleniumHQ/seleni ...
- 2、selenium原理和启动浏览器(Chromoption类)
戳:web自动化环境安装(selenium安装.卸载和Chromedriver下载.安装) selenium原理和启动浏览器 一. selenium 1.selenium简介 2.selenium原理 ...
- Selenium原理以及Python从零实现
Selenium简介 Selenium是一个用于Web应用程序自动化测试工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11), ...
- Selenium原理及安装教程
Selenium原理及安装教程 selenium原理 Selenium分为三大块: 我们编写的自动化程序:发送请求给浏览器驱动 浏览器驱动:解析来自自动化程序的代码并发送给浏览器 浏览器:执行程序的指 ...
- selenium原理以及要掌握的方法
@[selenium原理以及要掌握的方法 1.selenium概述 Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样(模拟人手工操 ...
- selenium原理python_selenium + python自动化测试unittest框架学习(一)selenium原理及应用...
unittest框架的学习得益于虫师的<selenium+python自动化实践>这一书,该书讲得很详细,大家可以去看下,我也只学到一点点用于工作中,闲暇时记录下自己所学才能更加印象深刻. ...
- Selenium原理及元素定位方法(JAVA)
Selenium原理 1.Selenium 1.0(Selenium RC): 早期的Selenium使用的是Javascript注入技术与浏览器打交道,需要Selenium RC启动一个Server ...
- selenium原理python_从python角度解析selenium原理
1.selenium工作流程 2.selenium工作原理(1)客户端和服务端之间实际是通过http协议进行通信,服务端的接口文档可参考: https://github.com/SeleniumHQ/ ...
- Selenium原理探秘
Selenium是ThoughtWorks公司研发的一个强大的基于浏览器的开源自动化测试工具,它通常用来编写web应用的自动化测试.早期也即Selenium1.x时期主要使用Selenium RC(S ...
最新文章
- 扩增子分析解读1质控,实验设计,双端序列合并
- emoji mysql 转 unicode_unicode和emoji编码
- 【RPC服务器不可用】解决方法
- onenote快捷键_onenote链接系列:4种链接笔记的地址
- 蓝桥杯 算法训练试题 数据交换 Java
- [剑指offer]面试题1:赋值运算符函数
- vue-cli的webpack模版,相关配置文件dev-server.js与webpack.config.js配置解析
- 计算机视觉论文-2021-07-09
- Google Cloud
- Zabbix之Python发送邮件
- 关于未来交通,这些大咖在未来论坛上的讨论火花四溅
- 解决nginx访问php文件变成下载
- 免费网络管理软件大全
- 阿尔法平台C语言编程题答案
- 51单片机学习 光敏电阻传感器实验
- 设置eMMC和DDR的工作频率
- 软件项目确立的几个步骤
- python bmp转jpg_python将bmp转换为jpg格式并删除原图的具体操作
- Android App集成支付宝
- 芯准TSN系统的测试与验证(1)——测试环境配置