强大的Web开源测试工具—Selenium

发表于:2009-04-14来源:作者:点击数: 标签:Seleniumselenium工具webWeb
介绍 Selenium 是ThoughtWorks专门为Web应用而 开发 的 自动化测试 工具,适合进行 功能测试 、 验收测试 ,其最大的优势有几点: !--[if !supportLists]-->1)!--[endif]-->可直接运行在浏览器之上,所见即所得,就像真实用户所做的一样。Selenium的核心,也称
介绍 Selenium是ThoughtWorks专门为Web应用而开发自动化测试工具,适合进行功能测试验收测试,其最大的优势有几点:

<!--[if !supportLists]-->1)      <!--[endif]-->可直接运行在浏览器之上,所见即所得,就像真实用户所做的一样。Selenium的核心,也称browser bot,是用JavaScript编写的。这使得测试脚本可以在受支持的浏览器中运行。browser bot负责执行从测试脚本接收到的命令

<!--[if !supportLists]-->2)      <!--[endif]-->支持多操作系统(Windows, Mac OS和Linux)和各种浏览器Internet Explorer、Mozilla和Firefox,更容易发现浏览器的不兼容性

<!--[if !supportLists]-->3)      <!--[endif]-->支持两种开发脚本的模式test runner(HTML文件)和driven(脚本语言编写),其语言包括Java, .NET, Perl, Python和Ruby.使用driven脚本,测试有一部分在浏览器之外运行,而如果使用test runner脚本的话,测试是完全在浏览器中运行的。

但是Selenium是轻量的测试框架,脚本所处理的测试用例构成简单,其实质就是通过HTTP协议,发送请求(request)来完成测试用例,所以很困难处理业务逻辑关系强的测试用例。

更多的讨论:http://forums.openqa.org/index.jspa

Selenium命令 Selenium命令分成两类——操作(action)和断言(assertion):

操作模拟用户与Web应用程序的交互。例如,单击一个按钮和填写一个表单,这些都是常见的用户操作,可以用Selenium命令来自动化这些操作。 断言验证一个命令的预期结果。常见的断言包括验证页面内容或当前位置是否正确。在Selenium网站上可以找到可用命令的完整列表。通过Selenium命令,脚本编写者可以描述browser bot在浏览器中所执行的操作

组成 Selenium IDE:一个firefox的plug-in,可以录制和回放并保存一些test cases,可以生成一些简单的基于rc模式的简单code.(相当于Jmeter的gui模式和jmeter脚本的生成-badboy) Selenium Core.整个测试机制的核心部分,即有assertion(断言)机制的test suite runner。它由一些纯js代码组成,可以运行在windows/linux的不同browser上(相当于Jmeter的runner跟Assertion) Selenium Remote Control:一个代理与控制端,可代替Selenium core/ Selenium IDE的client端(相当于通过编程来实现一切),是支持多语言的. (相当于Jmeter的client/server模式,但Selenium Remote Control更强一些)        支持的平台 Windows: Internet Explorer 6.0 Firefox 0.8 to 1.5, MozillaSuite1.6+, 1.7+ Seamonkey 1.0, Opera 8 Mac OS X: Safari 1.3+ Firefox 0.8 to 1.5, MozillaSuite1.6+, 1.7+ Seamonkey 1.0, Camino 1.0a1  Linux: Firefox 0.8 to 1.5, MozillaSuite1.6+, 1.7+ Konqueror 部署Selenium 下载地方:http://www.openqa.org/selenium/

selenium目录下的内容:

<!--[if !supportLists]-->l         <!--[endif]-->devtests:试验性功能 dom-images:查看DOM用图片

<!--[if !supportLists]-->l         <!--[endif]-->dom-styles:查看DOM用样式表

<!--[if !supportLists]-->l         <!--[endif]-->html-xpath: Xpath库

<!--[if !supportLists]-->l         <!--[endif]-->jsmock: javascript mock library

<!--[if !supportLists]-->l         <!--[endif]-->jsunit: javascript unit test library

<!--[if !supportLists]-->l         <!--[endif]-->tests: samples(以这个为基础开发测试用例)

<!--[if !supportLists]-->l         <!--[endif]-->核心js文件和html文件 

原文转自:http://www.ltesting.net