web 自动化之 selenium+webdriver 环境搭建及原理讲解
文章目录
- 一、web 自动化测试学习说明
- 二、什么 web 自动化测试
- 三、selenium 简介
- 四、web自动化测试环境搭建
- 五、web 自动化测试第一个脚本
- 六、selenium 原理及源码讲解
一、web 自动化测试学习说明
进阶 web 自动化测试学习:掌握 python 编程基础
二、什么 web 自动化测试
web 端测试: 对网页的测试
UI 测试: web 测试 + app 测试
web 自动化测试:通过代码对网页进行测试
UI 测试 = web 自动化测试 + APP 自动化测试
三、selenium 简介
selenium 是企业主流应用广泛 web 自动化测试框架
selenium 的三大组件:
1、selenium IDE 浏览器插件:实现脚本录制
2、WebDriver 实现对浏览器的各种操作(API 包)
3、Grid 分布式执行,用例同时在多个浏览器同时执行,提搞测试效率
四、web自动化测试环境搭建
环境搭建步骤:
1、安装 selenium (第三方库)
cmd 命令:pip install selenium
2、安装浏览器(谷歌浏览器)
常见浏览器:chrome 浏览器、IE 浏览器、Firefox 浏览器
3、安装浏览器驱动
chrome 浏览器驱动:chromedriver.exe
IE 浏览器驱动:ieserverdriver.exe
Firefox 浏览器驱动:geckodirver.exe
特别注意事项:下载驱动版本必须与浏览器的版本一致
chrome 浏览器驱动下载地址
chromedriver.exe 文件放置到 python 安装路径(python.exe 所在的路径)
五、web 自动化测试第一个脚本
打开浏览器,加载项目地址
from selenium import webdriver# 指令1:打开浏览器
driver=webdriver.Chrome()
# 指令2:加载项目地址
driver.get("https://www.baidu.com")
# 不断发送其他指令:不同指令操控浏览器做不同的事情
六、selenium 原理及源码讲解
selenium 脚本如何操控浏览器进行对应的操作?
三者如何通信,实现 web 自动化测试:
结合 selenium 源码讲解 selenium 的原理:
- 1、启动浏览器驱动(chromedriver.exe)服务
- 2、selenium 脚本与浏览器驱动建立连接,再 selenium 脚本发送指令(基于 http 通信)
(发送指令给浏览器驱动,浏览器驱动控制浏览器操作)
不同的指令对浏览器进行不同的操作
指令包(API包):JsonWireProtocol( JWP)
JsonWireProtocol ∙ SeleniumHQ/selenium Wiki ∙ GitHub
打开浏览器,执行的命令:
response = self.execute(Command.NEW_SESSION, parameters)
指定请求地址 http://ip:端口号/路径+请求方式+请求参数
response = self.command_executor.execute(driver_command, params)