Selenium is a tool for automating web application testing that allows tests to be written in various programming languages; it has multiple components including Selenium IDE for recording and playback of tests in Firefox, and Selenium RC which allows tests to be run from external languages and provides more power and flexibility than the IDE. Tests can be used to check for correct behavior and responses across different browsers and platforms as well as catch regressions.