Selemium WebDriver工作原理

概述:Webdrive利用浏览器原生的API,封装成一套更加面向对象的Selenium WebDriver API,直接操作浏览器页面里的元素,
甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的)
要通过selenium实现自动化测试,主要是需要三种东西:测试需要用的代码、webdriver、浏览器
① 代码
selenium支持多种语言(java/c#/python/ruby)。
测试工程师通过编程语言,调用浏览器对应API实现需要的功能。
② webdriver
webdriver,就像是一个媒介。代码驱动webdriver。
上文提过,不同浏览器有不同的webdriver。
例如火狐的geckodriver。
谷歌的 ChromeDriver。
IE的IEDriverServer
③ 浏览器
不同的浏览器对应不同的webdriver。
在这里插入图片描述
System.setProperty(“webdriver.chrome.driver”, “src/main/resources/chromedriver.exe”);
WebDriver driver = new ChromeDriver();
driver.get(“https://www.baidu.com/”);
过程1:通过客户端的脚本(WebDriver driver = new ChromeDriver())启动对应的驱动,然后根据驱动启动对应的浏览器作为远程服务器,服务器解析客户端发来的执行脚本请求(driver.get(“https://www.baidu.com/”))并最终返回给客户端(脚本),达到的效果就是代码实现对浏览器的操作
接下来我们一起来看一下,一条Selenium脚本执行时后端都发生了哪些事情:

过程2:对于每一条Selenium脚本,一个HTTP请求会被创建并且发送给Browser Driver
Browser Driver中包含了一个HTTP Server,用来接收这些HTTP请求
HTTP Server接收到请求后根据请求来具体操控对应的Browser
Browser执行具体的操作步骤
Browser将步骤执行结果返回给HTTP Server
HTTP Server又将结果返回给Selenium的脚本,如果是错误的HTTP代码我们就会在控制台看到对应的报错信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值