Automating UI Interaction (Selenium)
Selenium is a web apps software testing framework, and its name came from a joke by the original creator Jason Huggins in an email. He was making a joke of a competitor - Mercury by HP - saying that: "you can cure mercury poisoning by taking selenium supplements" :)
Huggins developed Selenium during 2004 while he was at ThoughtWorks. He joined Google in 2007 completing his work on Selenium. At the same time, ThoughtWorks was working on the development of a browser automation tool called WebDriver. In 2009 these two project has been combined together to produce a new product called Selenium 2.0 or in other words Selenium WebDriver. Now Selenium 2.x is almost the most powerful UI test automation tool and has become a kind of a 'de facto standard' for test automation. Selenium IDE is a Mozella Firefox extension that works as an integrated development environment for Selenium scripts called Selenese. Selenese is a special test scripting language for Selenium. Selenium Remote Control (RC) is a server written in Java that accepts Selenium command for browser through HTTP. It allows to write automated tests using any programming language that facilitated integrating Selenium in already existing testing frameworks. Selenium client API is an alternative to writing tests in Selenese that can be written in many languages like Python, Java, C#, and Ruby. Now in Selenium 2, Client API include WebDriver as a central component.
In the following section I'll give an example of how tests can be written using Python Client API.
In the following section I'll give an example of how tests can be written using Python Client API.