Test automation involves using software to set test preconditions, control test execution, compare outcomes to predictions, and report results. Selenium is an open source test automation tool that supports cross-browser testing through scripts in languages like Java and Python. Selenium IDE allows recording and playing back tests in Firefox, while Selenium RC allows running tests on multiple browsers through a server.