认识Selenium---简单介绍
2009-06-05 16:13
357 查看
selenium 是
openQA的一个用于Web应用程序测试的不错的开源工具。它是通过javascrīpt来驱动测试的,真实在浏览器中运行测试,更接近用户的实际操
作。它定位方式很灵活,可以直接用标签 ID,link等,当然最为灵活并可靠的就是通过xpath 来定位,能过xpath几乎没有不可定位的元素。此
外它支持各类主流浏览器IE,firefox,safari,而且是同一个脚本就可搞定,这是它较为厉害的一点。当然它也有自己的缺点:不能处理非
javascrīpt 类弹出窗口,跨网站处理不容易等。总的来说selenium 是一个非常不错的web应该程序测试工具。
selenium
本身亦有几个测试框架,selenium IDE, selenium RC, selenium Grid, selenium Core. 但总的来
说脚本只有两种即是通过程式语言编写的脚本及HTML脚本。其中较为常用的是selenium RC 及selenium IDE. HTML 脚本编
写较为简单易懂,但不够灵活,维护亦不那么容易,局限性较大,适合于非技术人员或是于编程不太熟悉者。而程式语言编写的脚本刚比较灵活强大,而且可以提供
较多种类语言编写如java,c#,ruby等。所以建议有编程基础的同仁用selenium IDE 录制后保存为 程式语言脚本进行编辑维护。
具体如何使用期selenium进行测试呢?下面将简单介绍selenium IDE 的使用并较为详细地与同仁们探讨selenium RC的使用。
一、简介
1
、Selenium是 ThoughtWorks 专门为 Web 应用而开发的自动化测试工具,适合进行功能测试、验收测试。
2
、最大的优势有以下几点:
●可直接运行在浏览器之上,就像真实用户所做的一样。
●Selenium测试可以在 Windows、Linux 和 MacintoshAnd 等系统下的 Internet Explorer、Mozilla 和 Firefox 中运行。
●测试脚本的运行不需要依赖其它任何的工具。
3
、可测试的内容
◆Browser兼容性测试:
验证被测试Web引用是否可以在不同的系统和不同的浏览器下都可以正常的执行。
同一个脚本不用修改即可在不同的环境下进行部署和执行测试。
◆系统功能测试:
创建可复用的测试脚本,以便在性功能和模块追加后对原有内容进行应用功能回归测试。
4
、Selenium的核心(browser bot)
是用 Javascrīpt 编写的。这使得测试脚本可以在受支持的浏览器中运行。browser bot 负责执行从测试脚本接收到的命令,测试脚本要么是用 HTML 的表布局编写的,要么是使用一种受支持的编程语言编写的。
5
、Selenium适用于以下浏览器:
Internet Explorer Mozilla Firefox Safari
Windows XP
6.0
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
Red Hat Linux
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
+
Mac OS X
10.3
不支持
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
+
1.3
+
二、命令
通过Selenium 命令,脚本编写者可以描述 browser bot 在浏览器中所执行的操作。
可以将这些命令分成两类 —— 操作(action) 和断言(assertion):
● 操作:模拟用户与 Web 应用程序的交互。
如:单击一个按钮和填写一个表单,这些都是常见的用户操作,可以用 Selenium 命令来自动化这些操作。
● 断言:验证一个命令的预期结果。
常见的断言包括验证页面内容或当前位置是否正确。
在 Selenium 网站上可以找到可用命令的完整列表
http:
//
www.openqa.org/selenium-core/seleniumReference.html(近期会将函数翻译出来)
三、执行模式
1
、可以按两种模式来使用 Selenium:test runner 和 driven。
2
、这两种模式在复杂性和编写方式方面有所不同:
driven 测试脚本编写起来往往要更复杂一些,因为它们是用编程语言编写的。
但是如果使用 Python 或 Ruby 之类的高级动态编程语言,那么这种复杂性方面的差异就很小。
3
、两种模式之间最大的不同点在于:
如果使用 driven 脚本,测试有一部分在浏览器之外运行,而如果使用 test runner 脚本的话,测试是完全在浏览器中运行的。
4
、不管是 test runner 还是 driven 测试用例,都可以与持续集成工具集成。
四、组成
●Selenium IDE:
一个firefox的plug
-
in
,可以录制和回放并保存test cases,测试用例为html格式。
(如果不用FF插件,录制或编辑好的测试脚本需要在Core部署下进行回放)
●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更强一些)
openQA的一个用于Web应用程序测试的不错的开源工具。它是通过javascrīpt来驱动测试的,真实在浏览器中运行测试,更接近用户的实际操
作。它定位方式很灵活,可以直接用标签 ID,link等,当然最为灵活并可靠的就是通过xpath 来定位,能过xpath几乎没有不可定位的元素。此
外它支持各类主流浏览器IE,firefox,safari,而且是同一个脚本就可搞定,这是它较为厉害的一点。当然它也有自己的缺点:不能处理非
javascrīpt 类弹出窗口,跨网站处理不容易等。总的来说selenium 是一个非常不错的web应该程序测试工具。
selenium
本身亦有几个测试框架,selenium IDE, selenium RC, selenium Grid, selenium Core. 但总的来
说脚本只有两种即是通过程式语言编写的脚本及HTML脚本。其中较为常用的是selenium RC 及selenium IDE. HTML 脚本编
写较为简单易懂,但不够灵活,维护亦不那么容易,局限性较大,适合于非技术人员或是于编程不太熟悉者。而程式语言编写的脚本刚比较灵活强大,而且可以提供
较多种类语言编写如java,c#,ruby等。所以建议有编程基础的同仁用selenium IDE 录制后保存为 程式语言脚本进行编辑维护。
具体如何使用期selenium进行测试呢?下面将简单介绍selenium IDE 的使用并较为详细地与同仁们探讨selenium RC的使用。
一、简介
1
、Selenium是 ThoughtWorks 专门为 Web 应用而开发的自动化测试工具,适合进行功能测试、验收测试。
2
、最大的优势有以下几点:
●可直接运行在浏览器之上,就像真实用户所做的一样。
●Selenium测试可以在 Windows、Linux 和 MacintoshAnd 等系统下的 Internet Explorer、Mozilla 和 Firefox 中运行。
●测试脚本的运行不需要依赖其它任何的工具。
3
、可测试的内容
◆Browser兼容性测试:
验证被测试Web引用是否可以在不同的系统和不同的浏览器下都可以正常的执行。
同一个脚本不用修改即可在不同的环境下进行部署和执行测试。
◆系统功能测试:
创建可复用的测试脚本,以便在性功能和模块追加后对原有内容进行应用功能回归测试。
4
、Selenium的核心(browser bot)
是用 Javascrīpt 编写的。这使得测试脚本可以在受支持的浏览器中运行。browser bot 负责执行从测试脚本接收到的命令,测试脚本要么是用 HTML 的表布局编写的,要么是使用一种受支持的编程语言编写的。
5
、Selenium适用于以下浏览器:
Internet Explorer Mozilla Firefox Safari
Windows XP
6.0
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
Red Hat Linux
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
+
Mac OS X
10.3
不支持
1.6
+
,
1.7
+
0.8
+
,
0.9
+
,
1.0
+
1.3
+
二、命令
通过Selenium 命令,脚本编写者可以描述 browser bot 在浏览器中所执行的操作。
可以将这些命令分成两类 —— 操作(action) 和断言(assertion):
● 操作:模拟用户与 Web 应用程序的交互。
如:单击一个按钮和填写一个表单,这些都是常见的用户操作,可以用 Selenium 命令来自动化这些操作。
● 断言:验证一个命令的预期结果。
常见的断言包括验证页面内容或当前位置是否正确。
在 Selenium 网站上可以找到可用命令的完整列表
http:
//
www.openqa.org/selenium-core/seleniumReference.html(近期会将函数翻译出来)
三、执行模式
1
、可以按两种模式来使用 Selenium:test runner 和 driven。
2
、这两种模式在复杂性和编写方式方面有所不同:
driven 测试脚本编写起来往往要更复杂一些,因为它们是用编程语言编写的。
但是如果使用 Python 或 Ruby 之类的高级动态编程语言,那么这种复杂性方面的差异就很小。
3
、两种模式之间最大的不同点在于:
如果使用 driven 脚本,测试有一部分在浏览器之外运行,而如果使用 test runner 脚本的话,测试是完全在浏览器中运行的。
4
、不管是 test runner 还是 driven 测试用例,都可以与持续集成工具集成。
四、组成
●Selenium IDE:
一个firefox的plug
-
in
,可以录制和回放并保存test cases,测试用例为html格式。
(如果不用FF插件,录制或编辑好的测试脚本需要在Core部署下进行回放)
●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更强一些)
相关文章推荐
- 认识Selenium---简单介绍
- python+selenium之简单介绍继承
- Python+selenium之简单介绍unittest单元测试框架
- 认识51CTO第一天,简单介绍一下自己
- DNS的简单认识和nslookup命令的简单介绍(一)
- 有关开源自动化测试工具--Selenium的一些简单介绍
- DNS的简单认识和nslookup命令的简单介绍(二)
- 简单的介绍自己,认识下CSDN的牛辦
- Python+Selenium中级篇之2-Python中类/函数/模块的简单介绍和方法调用
- 让你提前认识软件开发(25):数据库简单介绍
- 通俗喜感的介绍——HTTP协议—— 简单认识TCP/IP协议-roverliang
- 认识Selenium- Selenium RC 使用介绍
- 从头认识Spring-1.14 SpEl表达式(1)-简单介绍与嵌入值
- 认识Selenium- Selenium RC 使用介绍
- selenium+ant+testng测试框架简单介绍
- mysql索引的简单介绍
- TCP同步与异步及阻塞模式,多线程+阻塞模式,非阻塞模式简单介绍
- android:Activity四种启动模式简单介绍
- Kurento应用开发指南(以Kurento 5.0为模板) 之中的一个:简单介绍,安装与卸载