Approaches and Tools for Automated End-to-End Web Testing