Automated testing of web applications involves using a software tool to run repetitive tests on a system under test (SUT) using predefined test cases. Some key advantages of automated testing include being cheaper and more efficient than manual testing, allowing tests to be run 24/7 and at a higher speed and coverage than human testers. Selenium is a popular open-source tool for automating tests of web applications that allows controlling different browsers across operating systems using various programming languages. It includes components like Selenium IDE for recording and editing tests, Selenium Grid for parallel testing, and Selenium WebDriver for programmatically controlling browsers. TestNG is a common framework for organizing and running automated tests that produces reports and allows features like parallel testing and parameterization.