selenium

Selenium是ThroughtWorks公司一个强大的开源Web功能测试工具系列,基于JavaScript库

selenium的特点

1、轻量级的,免费的自动化测试工具
2、支持多平台:Windows,Linux,MAC
3、支持多语言:python,Java,Ruby,JavaScript,C#
4、支持多浏览器:Firefox,Chrome,edge,IE,360,Safari
5、支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器执行,相当于分发机的功能。selenium GRID

selenium工具集

selenium1:Jason、Higgis、JavaScript库、selenium RC(有环境沙箱问题,被webdriver API代替),selenium IDE(录制自动化脚本),selenium GRID(分布式)

缺点:浏览器的安全性会使一些操作被禁止(selenium IDE核心是JavaScript库)。

selenium2:selenium1+Webdriver(Goole)

WebDriver 解决了 Selenium 存在的缺点(比如,绕过 JS 沙箱)
Selenium 解决了 WebDriver 存在的问题(例如支持广泛的浏览器)
Selenium 的主要贡献者们都觉得合并项目是为用户提供最优秀框架的最佳途径

selenium3:增加了一些浏览器的原生驱动(Safari,edge(MS))。

Webdriver原理

在这里插入图片描述
其中乘客相当于脚本,司机相当于驱动,出租车相当于浏览器

乘客提出指令,司机按照指令,驱动出租车完成指令到达目的地

相当于,webdriver根据脚本,驱动浏览器执行脚本命令

在这里插入图片描述

启动浏览器后,selenium-webdriver会将目标浏览器绑定到特定的端口,启动后的浏览器则作为webdriver的remote server

客户端(也就是测试脚本),借助ComandExecutor发送HTTP请求给sever端(通信协议:The WebDriver Wire Protocol,在HTTP request的body中,会以WebDriver Wire协议规定的JSON格式的字符串来告诉Selenium我们希望浏览器接下来做什么事情)

Sever端需要依赖原生的浏览器组件,转化Web Service的命令为浏览器native的调用来完成操作

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值