Automation Testing and Selenium


Sohil Shrivastava

27 July, 2017

The Importance of Testing:
In software engineering, testing plays a vital role. Before delivering any software to the end user/client/customer software companies make sure that the application is error free so that there is no business loss to the customer as well as the organization.

Automation testing:
In software testing life cycle, testing is done to make sure functionalities of the application work correctly in every successive build mainly sanity, smoke & regression. To verify scenarios falling under these 3 phases of testing, many organizations nowadays have started using automation tools like Selenium, Sahi, HP-QTP etc. These automation tools definitely lessen the burden of the testers who test the application thoroughly during builds.

Moreover presently when all the companies are moving from conventional development life cycle to agile methodology, automation testing is needed for the companies because of the continuous integration agenda of agile.

Definitely, it is the most common automation testing tool in the web applications testing world because of its vast language support (Python, Java, C#, Ruby, Javascript), open source (cost effective and rich framework is developed), multiple browser and OS support (all browsers are supported even headless browsers like PhantomJs), Ajax and Javascript web applications support, ability to integrate with bug reporting tools like Jira, Selenium also has an ability to run multiple tests in different environments and ability to generate well-formed reports of these tests.

After the introduction of selenium web driver over the Selenium IDE, Selenium has become more of a developer paradigm tool.

Manual Vs Automation testing:
Although a tool which reduces human efforts in software testing looks fascinating but this is not the actual story because manual testing or manual efforts are always required when there is any new functionality in the application as this functionality needs to be observed manually in order to decide its automation suite to reduce efforts in later testing phases of the application.