Selenium----Selenium WebDriver /RC工作原理
1.Selenium RC 工作原理
说明:客户端库文件将命令传递给server。接着server使用selenium-core的javaScript命令传递给浏览器,浏览器会使用自带的javaScript翻译器来执行selenium命令。这意味着测试脚本中的selenium操作和验证将被执行。
*:很多博客写的都很好,基本上可以直接参考学习(http://www.cnblogs.com/fnng/archive/2012/02/01/2335215.html)
2.Selenium RC 架构特点
(1)同源规则
在浏览器中打开的不同界面不能相互作用。Selenium Server用来回避这一个问题,让浏览器以为自己在server提供的单一站点上工作。
同源:相同的协议,端口,域名
(2)代理注入
Selenium用来规避同源规则的第一种方法就是代理注入。
Selenium server 像客户端配置的HTTP代理一样工作,位于系统和浏览器之间。
浏览器启动时,使用配置的profile,其中已经设置localhost 4444作为HTTP代理,这就是为什么来自浏览器的HTTP请求都会经过selenium server而且HTTP响应也来自selenium server而非真实的服务器。
(3)提高浏览器权限
高特权模式,它允许浏览器做一些通常不被允许的事情,如XXS。通过该模式,selenium core可以直接带卡待测系统,并读取和操作其中的内容,而不需要通过Selenium RC Server 来传递整个待测系统。
4.Selenium WebDriver工作原理
webdriver使用不同的底层框架,Selenium 遥控器使用JavaScript的Selenium 核嵌入式已经在有一定的局限性的浏览器中。 webdriver直接交互而不与Selenium 远程控制,依赖于服务器上的任何中介的浏览器。
最新文章
- [开源 .NET 跨平台 数据采集 爬虫框架: DotnetSpider] [二] 基本使用
- 纯java配置SpringMVC
- mysql密码重置
- nginx+uwsgi+django+celery+supervisord环境部署
- Visual Studio低版本升级到Visual Studio 2012出现Warning LNK4075
- Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary
- js(引用类型和setTimeout scope)
- c# ICSharpCode.SharpZipLib.Zip实现文件的压缩
- linux下遍历目录(转-在于思考)
- H264的句法和语法总结(一)分层结构
- 部署K2 Blackpearl流程时出错(与基础事务管理器的通信失败或Communication with the underlying transaction manager has failed.
- C++STL之整理算法
- 【SPOJ 2319】 BIGSEQ - Sequence (数位DP+高精度)
- 【二分答案】【POJ3122】【Northwestern Europe 2006】Pie
- jQuery笔记(1)
- Python之基础练习代码
- confirm提示弹出确定和取消按钮
- Kafka Consumer API样例
- nginx负载均衡的5种策略
- [LeetCode] 721. Accounts Merge_Medium tag: DFS recursive