一、经典面试题
做 web 测试用过 Selenium 吗?说一下 Selenium 的工作原理。
考察点分析
面试官主要目的:
- 了解是否使用过 selenium 进行 web 自动化测试
- 为什么 Selenium 支持多浏览器
- 是否了解 Selenium 工作原理
二、解题思路
技术点
- selenium 有哪几部分组成
- 源码角度分析 selenium 工作原理
- 使用了 WebDriver Wire Protocol 协议
selenium介绍
- WebDriver:用于操作浏览器
- Selenium IDE:用来录制回放测试用例的工具
- Selenium Grid:用于分布式并发执行测试用例
selenium自动化测试
- selenium用于web程序 UI自动化测试
- selenium可以跨平台(windows/linux/mac)
- selenium支持所有主流浏览器,包括:chrome、Firefox、IE、Edge、opera和Safari
selenium为什么能够支持多种浏览器
- selenium WebDriver是典型的server-client模式
- 浏览器厂商也提供了驱动浏览器操作的中间件(WebDriver),通过这个中间件可以直接驱动浏览器进行各种操作
selenium工作原理
selenium原理是:selenium之所以能够支持多种浏览器,是因为各大浏览器厂商会提供不同版本的驱动程序,来驱动浏览器模拟各种操作。selenium在给中间件发送请求时会遵循一个特定的(WebDriver Wire Protocol)协议进行通讯。