这里写目录标题
- 一、selenium原理解析
- 1、目的
- 2、技术点
- 3、Selenium 介绍
- 4、Selenium 自动化测试
- 5、为什么能够支持这么多种浏览器?
- 6、Selenium 工作原理
- 二、appium原理解析
- 1、目的
- 2、技术点
- 3、Appium 介绍
- 4、Appium 工作原理
一、selenium原理解析
1、目的
了解是否使用过 selenium 进行 web 自动化测试
为什么 Selenium 支持多浏览器
是否了解 Selenium 工作原理
2、技术点
selenium 有哪几部分组成
源码角度分析 selenium 工作原理
使用了 WebDriver Wire Protocol 协议
3、Selenium 介绍
官网:https://www.selenium.dev/
WebDriver 用于操作浏览器
Selenium IDE: 是用来录制回放测试用例的工具
Selenium Grid: 分布式并发执行用例
4、Selenium 自动化测试
Selenium 用于 Web 应用程序的 UI 自动化测试工具
可以跨平台(Mac/Linux/Windows)
支持所有主流浏览器,包括(Chrome/Chromium、 Firefox、 Internet Explorer、 Edge、 Opera 和 Safari)
5、为什么能够支持这么多种浏览器?
Selenium WebDriver 是典型的 Server-Client 模式
浏览器厂商会提供驱动浏览器操作的中间件(WebDriver), 通过这个中间件可以直接驱动浏览器执行各种操作,比如点击,滑动, 输入,下拉等等
6、Selenium 工作原理
编写测试用例——》执行测试脚本——》后台启动一个服务(RemoteServer)绑定到某一个浏览器上,RemoteServer会一直监听代码发过来的请求(通过JsonWire协议发送请求)——》将收到的请求解析转发给浏览器驱动(Chromedriver)(简称中间件)——》浏览器驱动再次驱动对应的浏览器,执行对应的操作(点击、滑动、输入等)(不同的浏览器、不同的浏览器版本要和浏览器驱动对应)——》执行完操作之后,将结果依次的再发送给客户端
二、appium原理解析
1、目的
想了解你有没有用过 Appium 测试框架
常用的 API 是否熟悉,移动端的特殊组件,特殊操作是否能处理
是否看过源码
是否了解 Appium 框架底层工作原理
2、技术点
常用的 appium api
底层通讯协议
Appium 底层框架原理
3、Appium 介绍
官网:http://appium.io/
跨语言:Java、Python、nodejs 等
跨平台
端:Android、iOS
PC 端:Windows、Mac
底层多引擎可切换
生态丰富,社区强大
4、Appium 工作原理
client端:编写测试用例
server端:在运行测试用例脚本的时候需要提前启动appium server端,它会监听客户端发送过来的请求(默认端口为4723),在请求过程中遵循一种webdriver协议,在第一次通讯的时候,会传递一个 DesireCapability 对象,告诉 AppiumServer,被测试设备的一些信息,DesireCapability 对象中包含(platformName、platformVersion、deviceName等等)。第一次请求完成,会创建一个 session 对象,随后会使用这个 session 对象完成对设备的操作(比如点击,输入等)。
手机端:最后将执行结果返回给server端,server端再将结果返回给client端