Selenium components

来源:互联网 发布:极有家淘宝官网 编辑:程序博客网 时间:2024/04/27 21:23

Selenium IDE

   Selenium IDE is a complete integrated development environment(IDE) for Selenium tests. It is implemented as a Firefox extension, and allows recording, editing, and debugging tests. It was previously known asSelenium Recorder. Selenium-IDE was originally created by Shinya Kasatani and donated to the Selenium project in 2006.

   Scripts may be automatically recorded and edited manually providing autocompletion support and the ability to move commands around quickly.

   Scripts are recorded in Selenese, a special test scripting language for Selebnium. Selenese provides commands for performing actions in a browser, and for retrieving data from the resulting pages.


Selenium Client API

    As an alternative to writing tests in Selenese, tests can also be written in various programming languages. These tests then  communicatewith Selenium by calling methods in the Selenium Client API. Selenium currently provides client APIs for Java, C#, Ruby and Python.

   With Selenium 2, a new Client API was introduced( with WebDriver as its central component). However, the old API(using class Selenium) is sitll supported.


Selenium Remote Control

    Selenium Remote Control(RC) is a server, written in Java, that accepts commands for the browser via HTTP.RC makes it possible to write automoted tests for a web application in any programming language, which allows for better integration of Selenium in existing unit test frameworks. To make writing tests easier, Selenium project currently provides client drivers for PHP, Python, Ruby, .NET, Perl and Java. The Java driver can also be used with JavaScript(via the Rhino engine), A new instance of selenium RC server is needed to launch html test case-which meas that the port should be different for each parallel run. However, for Java/PHP test case only one selenium RC instance needs to be running continuously.


Selenium WebDriver

    Selenium webDriver is the successor(接替的人或事物) to Selenium RC. Selenium WebDriver  accepts commands(sent in Selenese, or via a Client API) and sends them to a browser, this is implemented through a browser-specific browser driver, which sends commands to a browser, and retrieves results. Most browser drivers actually launch and access a browser application(such as Firefox or Internet Explorer); there is also anHtmlUnit browser driver, which simulates a browser using HtmlUnit.

Unlike in Selenium 1, where the Selenium RC server was necessary to run tests, Selenium WebDriver does not need a  special server to execute tests. Instead, the Webdriver directly starts a browser instance and controls it. However, Selenium Grid can be used with WebDriver to execute tests on remote systems.


Selenium Grid

   Selenium Grid is a server that allows tests to use web browser instance running on remote machines. With Selenium Grid, one server acts as thehub. Tests contact the hub to obtain access to browser instance. The hub has a list of servers that provide access to browser instance(WebDriver nodes), and lets tests use these instances. Selenium Grid allows running tests in parallel on multiple machines, and to manage different browser versions and browser configurations centrally(instead of in each individual test).

0 0
原创粉丝点击