J'ai un problème lors de l'exécution des tests de l'interface utilisateur Safari sur MAC. J'ai un élément:
selenium.common.exceptions.ElementNotInteractableException: Message: C:\python\lib\site-packages\selenium\webdriver\remote\errorhandler.py:242: ElementNotInteractableException
Il réduit / dégage un bloc caché avec des filtres. Lorsque j'effectue une action clic () dans Chrome, FF ou Edge, cette action est effectuée. Mais quand j'exécute le même code pour Safari, j'obtiens l'exception:
wd.find_element_by_xpath("//div[@id='ZoomBundle_people_search__searchTab-innerCt']//fieldset//span[text()='Company Information']")
J'ai essayé d'ajouter WebDriverWait, mais le résultat est le même. Il voit l'élément, mais ne peut pas interagir avec lui.
3 Réponses :
C'est un problème avec SafariDriver. Vous avez une suggestion pour essayer de cliquer via JS:
elem.click()
à la place
wd.execute_script("arguments[0].click();", elem)
Et ça fonctionne bien maintenant (=
p >
Si vous ne souhaitez pas exécuter javascript, essayez la simulation réelle de l'appui sur la touche Entrée du clavier comme suit.
L'exemple ci-dessous correspond au code Python
from selenium.webdriver.common.keys import Keys driver = webdriver.Safari() element = driver.find_element_by_xpath("//div[@id='ZoomBundle_people_search__searchTab-innerCt']//fieldset//span[text()='Company Information']") element.send_keys(Keys.RETURN)
Si vous pensez qu'il s'agit d'un bogue dans safaridriver, veuillez déposer un rapport de bogue sur https://feedbackassistant.apple. com / avec un scénario de test et un script de test. Ce comportement est bien spécifié, donc toute divergence entre les implémentations est probablement un bogue.