Selenium is an easy-to-use and popular open source web applications Test Automation tool. Now a days’ lot of enterprises and ISVs (Independent Software Vendors) are looking out for open source tools. Open source communities are strong and getting support is also easier than for the licensed tools. Best example for this is LAMP (Linux, Apache, MySQL, PHP) which is used for web development and Selenium, used for test automation.
Selenium provides lot of features for test automation such as easy recording and play back of tests using Selenium IDE. Selenium supports multiple platforms, browsers, and programming languages. Especially, supporting multiple programming languages such as C#, Java, Ruby, Python, PHP, Groovy, etc is really fascinating.
This blog explains test automation with Selenium from the scratch in a tutorial manner. Even if a tester who does not have any prior automation testing experience can also start learning Selenium by going through the various posts in this blog. Blog posts cover lot of topics such as Recording tests with Selenium IDE, setting up Selenium with Eclipse, learning Java concepts and programming, understanding Selenese methods, writing data driven tests with MS excel, CSV, XML, etc. These topics are explained in a manner that will help the readers to understand the Selenium easily.
Below is an Index of Topics covered in the blog on Selenium:
- What is Selenium?
- How Selenium identifies the objects?
- Write XPath to identify the objects
- Record tests using Selenium IDE
- Sample application to learn Test Automation – Sugar CRM (an open-source CRM application )
- Learn Selenium Step-by-Step
- Reading these articles together (one by one) is highly suggested to understand recording and running of Selenium Tests (sample application used in all these posts)
- Assertions for verifying test output
Selenium and JUnit:
- Setting up Selenium with Eclipse
- Introduction to JUnit 4 annotations
- JUnit 4 annotations – Before vs BeforeClass
- How to write Selenium tests with JUnit
Properties, Logs, and Reports:
- Parameterize global settings using properties files.
- Create Logs for step-by-step analysis of test execution.
- Generate HTML reports / XML reports for detailed summary of test execution.
Test Automation Framework:
- What is Test Automation Framework
- What are the features of a framework
- Designing a framework for Test Automation
The above topics are covered in the various blog posts.