Selenium Webdriver 架构

本文简要介绍Selenium 的Webdriver 架构,我对selenium的相关知识点进行了整理,大家可免费下载:Selenium自动化测试框架详细介绍ppt及示例脚本.rar

Selenium简介

Selenium是用于浏览器的自动化测试工具,与浏览器进行交互,实现对web应用的自动化测试,Selenium包括Selenium IDE, Selenium Webdriver 和 Selenium Grid三个工具。

Selenium IDE (Integrated Development Environment)是一个浏览器插件,提供脚本录制、脚本生成和回放功能,初次使用selenium的新手可以用它来做一些简单的测试,

Selenium Webdriver 是一个浏览器自动化框架,接受脚本命令并发送到浏览器(通过浏览器驱动来实现),支持多种语言(包括Java, Ruby, Python, PHP, JavaScript, C#等)和多种浏览器,并且支持windows,Linux,macOS等操作系统。

Selenium Grid实现在多个机器上并行运行 selenium,也就是同时在多个机器上执行测试,并且可以是不同的浏览器和操作系统(跨平台)。

Selenium Webdriver 架构

Selenium Webdriver API实现脚本语言与浏览器之间的通信,Selenium Webdriver 架构包括四个基本组件:

  • Selenium Language Bindings/Selenium Client Library:Selenium语言绑定/客户端库
  • JSON Wire Protocol:JSON有线协议
  • Browser Driver:浏览器驱动
  • Browser:浏览器

Selenium支持多种语言,包括Ruby、Java、Python、C#、JavaScript、GO、Haskell、JavaScript、Perl、PHP、R和Dart。可参考网站:https://www.selenium.dev/downloads/#client-drivers 。执行测试用例时,selenium 代码将被转换为JSON格式,发送给浏览器驱动。

JSON(JavaScript Object Notation)是一种用于在Web上交换数据的开放标准。JSON有线协议是一种REST API ,基于HTTP协议实现selenium客户端与remote server(浏览器驱动的HTTP服务器)的交互,浏览器驱动(HTTP server)接收到命令(HTTP requests)后,将请求发送到对应的浏览器上执行,并返回HTTP响应。如果是POST请求,将在浏览器上执行相应的操作;如果发送的是GET请求,浏览器将发送HTTP响应,发送到浏览器驱动,然后浏览器驱动使用JSON有线协议将响应发送到客户端。

不同的浏览器对应各自的驱动程序,驱动下载和使用方法可参考官方文档:https://www.selenium.dev/documentation/en/webdriver/driver_requirements/ ,或者参考文章Selenium多浏览器测试

--THE END--

系列文章

1、Selenium Webdriver 架构
2、Selenium Web元素定位方法
3、Selenium Web元素操作
4、Web自动化测试:xpath & CSS Selector定位
5、Selenium ActionChains、TouchAction方法
6、Selenium switch_to方法
7、Selenium Select下拉框
8、Selenium多浏览器测试
9、Selenium执行JavaScript脚本
10、selenium/appium 等待方式介绍
11、Selenium Grid:在多个主机上并行执行自动化脚本


欢迎关注公众号:「测试开发小记」及时接收最新技术文章!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值