Selenium私房菜系列6 -- 深入了解Selenium RC工作原理(1)

简介:

    前一篇已经比较详细讲述了如何使用Selenium RC进行Web测试,但到底Selenium RC是什么?或者它由哪几部分组成呢??

一.Selenium RC的组成:

关于这个问题,我拿了官网上的一幅图来说明这个问题。

 

Selenium RC主要由两部分组成:

(1).Selenium Server:

 

Selenium Server负责控制浏览器行为,总的来说,Selenium Server主要包括3个部分:LauncherHttp ProxySelenium Core。其中Selenium Core是被Selenium Server嵌入到浏览器页面中的。其实Selenium Core就是一堆JS函数的集合,就是通过这些JS函数,我们才可以实现用程序对浏览器进行操作。

(2).Client Libraries:

写测试案例时用来控制Selenium Server的库。

 

二.Selenium RC与Testcase的关系

先看下图:

 

(1).测试案例(Testcase)通过Client Lib的接口向Selenium Server发送Http请求,要求和Selenium Server建立连接。

为什么要通过发送Http请求控制Selenium Server而不采用其他方式呢?从上文可以看出,Selenium Server是一个独立的中间服务器(确切地说是代理服务器),它可以架设在其他机器上!所以测试案例通过发送HTTP请求去控制Selenium Server是很正常的。

(2).Selenium Server的Launcher启动浏览器,把Selenium Core加载入浏览器页面当中,并把浏览器的代理设置为Selenium Server的Http Proxy。

(3).测试案例通过Client Lib的接口向Selenium Server发送Http请求,Selenium Server对请求进行解析,然后通过Http Proxy发送JS命令通知Selenium Core执行操作浏览器的动作。

(4).Selenium Core接收到指令后,执行操作。

(5).浏览器收到新的页面请求信息(因为在(4)中,Selenium Core的操作可能引发新的页面请求),于是发送Http请求,请求新的Web页面。
由于Selenium Server在启动浏览器时做了手脚,所以Selenium Server会接收到所有由它启动的浏览器发送的请求。

(6).Selenium Server接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。

(7).Selenium Server的Http Proxy把接收的Web页面返回给浏览器。

为什么Selenium RC中的Selenium Server需要以这种代理服务器的形式存在呢?下一篇继续介绍:>


本文转自hyddd博客园博客,原文链接:http://www.cnblogs.com/hyddd/archive/2009/05/30/1492213.html,如需转载请自行联系原作者。


目录
相关文章
|
移动开发 前端开发 算法
Selenium和Appnium、Airtest的底层原理
Selenium和Appnium、Airtest的底层原理
1227 0
|
2月前
|
JavaScript 前端开发 测试技术
selenium的底层核心原理
Selenium 是一个强大的Web应用自动化测试工具,通过模拟用户与浏览器的交互来测试Web应用。其核心组件WebDriver支持多种浏览器,通过HTTP请求管理和操作浏览器会话,实现跨浏览器和跨平台的自动化测试。Selenium Grid支持分布式测试,提高测试效率。作为一个开源项目,Selenium不断发展,适应快速变化的Web技术。
|
5月前
|
Web App开发 测试技术 API
Web自动化测试框架(基础篇)--Selenium WebDriver工作原理和环境搭建
本文详细介绍了Selenium WebDriver的工作原理,包括其架构、通信机制及支持的浏览器,并指导读者如何在Python环境下搭建Selenium WebDriver的测试环境,从安装Python和Selenium库到编写并运行第一个自动化测试脚本。
272 0
|
8月前
|
敏捷开发 监控 IDE
深入理解自动化测试工具Selenium的工作原理与实践应用
【5月更文挑战第26天】 随着敏捷开发和持续集成理念的普及,自动化测试在软件开发生命周期中扮演了至关重要的角色。Selenium作为最流行的自动化测试工具之一,以其开源、跨平台和支持多种编程语言的特性被广泛使用。本文将详细解析Selenium的核心组件,探讨其工作原理,并通过案例分析展示如何高效地实施Selenium进行Web应用的自动化测试。我们将从测试准备到结果分析的全过程,提供一系列实用的策略和最佳实践,帮助读者构建和维护一个健壮的自动化测试环境。
|
Web App开发 数据采集 缓存
曲鸟全栈UI自动化教学(四):Selenium工作原理及Webdriver对浏览器的配置和操作
曲鸟全栈UI自动化教学(四):Selenium工作原理及Webdriver对浏览器的配置和操作
507 0
曲鸟全栈UI自动化教学(四):Selenium工作原理及Webdriver对浏览器的配置和操作
|
Web App开发 XML 前端开发
曲鸟全栈UI自动化教学(三):Selenium页面操作原理及如何高效的进行元素定位
曲鸟全栈UI自动化教学(三):Selenium页面操作原理及如何高效的进行元素定位
273 0
曲鸟全栈UI自动化教学(三):Selenium页面操作原理及如何高效的进行元素定位
|
JSON 测试技术 数据格式
软件测试面试题:请描述Selenium Webdriver的工作原理。
软件测试面试题:请描述Selenium Webdriver的工作原理。
144 0
|
JSON Java 测试技术
Webdriver+Selenium工作原理
Webdriver+Selenium工作原理总结
685 0

热门文章

最新文章

相关实验场景

更多