Je veux créer un test Selenium pour tester nos extensions avec le courrier AOL. J'ai réussi à me connecter à AOL et à rédiger un e-mail, mais je dois également sélectionner des éléments dans l'éditeur, qui se trouve dans un iframe. J'ai vérifié et même lorsque l'éditeur est ouvert, le test suivant échoue:
self.assertEqual(first=1, second=len(self.driver.find_elements_by_xpath(xpath="//iframe[@name='editor_body']//body[@contenteditable='true']")))
J'obtiens l'erreur AssertionError: 1 != 0
. Comment sélectionner le corps de l'iframe et d'autres éléments par Xpath (ou de toute autre manière avec Selenium)?
Vous ne pouvez pas traverser <iframe>
Jusqu'à ce que vous y basculiez. Votre xPath,
//iframe[@name='editor_body']//body[@contenteditable='true']
ne fonctionnera pas car la balise <body>
se trouve dans un iFrame, qui n'est pas dans le contexte actuel. vous devez d'abord y basculer:
driver.switch_to.frame('editor_body')...