I am automatating a test using Selenium Webdriver using Python language. My code is -:
import unittest
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
class JqueryUiTests(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
def test_tooltip(self):
driver = self.driver
frame=driver.find_element_by_tag_name('iframe')
driver.switch_to_frame(frame)
tooltip_input=driver.find_element_by_xpath("//input[@id='age']")
actions=ActionChains(driver)
actions.move_to_element(tooltip_input)
actions.perform()
tooltip_message=driver.find_element_by_xpath("//div[@role='tooltip']")
message=tooltip_message.text
self.assertEqual(message,'We ask for your age only for statistical purposes.')
def tearDown(self):
self.driver.close()
if __name__ == "__main__":
unittest.main()
The error message that i get is
File "E:\Python Workspace\example.py", line 30, in test_tooltip
tooltip_message=driver.find_element_by_xpath("//div[@role='tooltip']")
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 253, in find_element_by_xpath
return self.find_element(by=By.XPATH, value=xpath)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 707, in find_element
{'using': by, 'value': value})['value']
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 196, in execute
self.error_handler.check_response(response)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 181, in check_response
raise exception_class(message, screen, stacktrace)
NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//div[@role='tooltip']"}
(Session info: chrome=55.0.2883.87)
(Driver info: chromedriver=2.26.436362 (5476ec6bf7ccbada1734a0cdec7d570bb042aa30),platform=Windows NT 6.1.7601 SP1 x86_64)