Selenium WebDriver Architecture

Selenium WebDriver Architecture post gives you brief in-details knowledge about architecture of Selenium WebDriver,why selenium organization released Selenium WebDriver if Selenium RC-Remote Control is already in working,let's see the details in this post.

Selenium WebDriver Architecture

Selenium RC Problems

1.Selenium RC works with JavaScript injection
2.Selenium RC identify the elements based upon JavaScript in different browsers.
3.In IE Browser JavaScript injection is removed.
4.Most of the different browsers has different JavaScript to work with web page elements.

In order to overcome with those problems in Selenium RC-Remote Controller ,selenium org launched Selenium WebDriver.

Must Read

Generate HTML Reports using SeleniumRead Data From properties file using SeleniumLaunch Firefox Browser using GeckoDriverSelenium-TestNG examples to execute multiple classesSelenium WebDriver Methods

Selenium WebDriver Architecture

Please find below screenshot to understand clearly as well as please watch Architecture video tutorials with explanation.In Selenium WebDriver no proxy server present but in Selenium RC it has Proxy server which is used to send all the commands to different drivers whether it may be Firefox browser , IE Browser or Chrome browsers etc.

n Architecture it has three components those are

1.Language Bindings
2.Selenium Server - it's a set of API's
3.Drivers

Selenium supports different languages what ever language your are using for writing your test scripts in selenium webdriver,those language bindings sending commands across the Selenium Server i.e API interface and sending requested commands from languages bindings to different drivers those are firefox,IE,chrome browsers etc.

Drivers receiving commands from Server directly and performing the actions on different browsers as per different commands using  remote WebDriver, what ever the test execution as we are seeing while test execution in the UI. Next it will return the response to the API Server and API Server return the response to the language bindings and your test execution results displays in CONSOLE with PASS/FAIL.

Also Read - Selenium Tutorial

Conclusion

Selenium Webdriver directly executes commands on different browsers with out any proxy servers.Selenium Webdriver executes test scripts very fast because there is no another server to wait for language bindings commands to executes and it will take very less time to identify the web elements on different browsers.

3 comments:

  1. The blog gave me idea about selenium web driver architecture and problems with Selenium RC are explained effectively.Thanks for sharing the Valuable post
    Selenium Training in Chennai

    ReplyDelete