Table of Contents1. Introduction1.1. Assumptions1.2. Lab Files2. The Selenium Project2.1. Overview2.2. Selenium And The Web Testing Frameworks2.3. History3. Selenium IDE3.1. Overview3.2. Presentation3.3. Export Features3.4. Installation3.5. Lab 13.6. Discussion4. Test-Cases and Test-Suites4.1. Selenese4.2. Test Suites5. Commands5.1. Actions5.2. Accessors5.3. Assertions6. Locators6.1. Identifier6.2. Id6.3. Name6.4. Link6.5. DOM6.6. XPath6.7. CSS6.8. UI-Elements6.9. Structure-Dependent Or Not?6.10. Quiz6.11. Lab 27. Selenium Remote Control (RC)7.1. Overview7.2. Selenium Server7.3. Client libraries7.4. Lab 3 : Installation of Selenium RC7.5. Junit7.6. RSpec7.7. JavaScript7.8. Fixtures7.9. Lab 4 : Improving a test8. Selenium Grid8.1. Presentation9. Testing Strategies9.1. What Kinds Of Tests?9.2. How Should You Test Your Apps9.3. Best Practices9.4. UI-Elements:9.5. Rollups9.6. Lab 5: UI-Elements And Rollups10. PageObject10.1. Lab 6: PageObject Pattern11. Selenium In Your Company11.1. Where to start?11.2. What Are The Issues?11.3. Continuous Integration12. Selenium 2.012.1. Differences & New Features12.2. API13. Toolbox13.1. Flash testing13.2. Selenium helper tools13.3. Test developer tools14. Appendix14.1. Selenium RC API Reference (Ruby)14.2. Quiz answers