Techniques for Enhancing Selenium automation testing with Machine Learning and Artificial Intelligence