Selenium is a most powerful portable software testing framework for web applications. It is an open-source software released under the Apache 2.0 license. Selenium was developed by Jason Huggins and team. It provides a record/playback tool for testing web based applications.
Talking about the disadvantages, Selenium needs very much expertise resources as it demands higher level technical skills. It needs third party tools or custom applications for report generation and script generation. Also Selenium script generation time is bit high and it does not provide file uploading facility. There is no option to verify images.
Although Selenium has some disadvantages in test management facilities, it is an excellent automation tool to improve the quality of web based testing especially shortening of test life cycles due to efficient test automation and of course the low cost.