Selenium是ThoughtWorks专门为Web应用程序编写的一个验收测试工具。Selenium支持的浏览器包括IE、Firefox、Safari等。框架底层使用JavaScript模拟真实用户对浏览器进行操作。 1.1 准备软件
本节介绍要准备的软件。
Selenium IDE包括以下内容:
firebug-1.12.8-fx.xpi;
Firefox_Setup_25.0.1_chs.exe;
selenium-ide-2.6.0.xpi。
WebDriver包括以下内容:
chromedriver.exe;
geckodriver.exe;
eclipse.zip;
jdk-8u121-windows-x64.exe.exe;
selenium-server-standalone-3.3.1.jar(可从Selenium官网下载最新版本)。
帮助文档是selenium_javadoc。
被测环境是WAMP+Discuz_X2_SC_UTF8论坛(可从WAMP官网和Discuz官网下载)。
1.2 Selenium简介下面对Selenium的主要功能及版本进行介绍。
1.2.1 主要功能
Selenium的主要功能如下。
测试与浏览器的兼容性——测试应用程序是否能够在不同浏览器和操作系统上正常运行。
测试系统功能——创建回归测试以检验软件功能和用户需求,支持自动录制动作和自动生成.NET、Java、Perl等语言的测试脚本。
1.2.2 各版本和系统之间的关联
Selenium 1.0是一套完整的Web应用程序测试系统,可用于测试的录制(Selenium IDE负责)、编写与运行(Selenium Remote Control负责),以及测试的并行处理(Selenium Grid负责)。Selenium的核心——Selenium Core基于JsUnit,完全由JavaScript编写,因此可运行于任何支持JavaScript的浏览器上。Selenium1.0的原理如图1-1所示。
图1-1 Selenium 1.0的原理Selenium 1.0中组件的功能如下。
Selenium IDE:Firefox的附加组件,结合Firefox不但可以录制测试脚本,回放脚本,而且可以生成一些基于Selenium Remote Control模式的简单代码。
Selenium Core:整个测试机制的核心部分,即有断言(assertion)机制的测试套件运行器(test suite runner)。它由一些纯JavaScript代码组成,可以运行在Windows/Linux系统下的不同浏览器中。
Selenium Remote Control:一个代理与控制端,可代替Selenium Core/ Selenium IDE的客户端(相当于通过编程来实现一切),支持多种语言。
和Selenium一起出现的还有WebDriver。WebDriver和Selenium本是两个独立的项目,实现机制也是不同的,但是Selenium团队在Selenium 2.0中将两者合并,将其命名为WebDriver。Selenium 2.0的主要新功能是集成了Selenium?1.0及WebDriver。也就是说,Selenium 2.0兼容Selenium 1.0,它既支持Selenium API,也支持WebDriver API。Selenium 2.0的原理如图1-2所示。
图1-2 Selenium 2.0的原理 ……扫码/点击阅读原文立即查看本章完整内容
戳