Je teste, et je dois cliquer sur des éléments, mais parfois ça clique, parfois pas. J'ai essayé quelques solutions, mais il n'y en a pas une, qui clique toujours. Existe-t-il une solution pour cliquer sur un élément, qui fonctionne toujours?
J'ai essayé ces codes:
1:
await driver.executeScript("document.getElementById('u_0_a').click()");
2:
var element = await driver.findElement(By.id("u_0_a")); await element.click();
3 :
await driver.findElement(By.id("u_0_a")).click();
J'utilise le sélénium avec node.js, javascript, pilote chrome.
4 Réponses :
Essayez d'utiliser:
var element = await driver.findElement(By.id("u_0_a")); await driver.executeScript("arguments[0].click();", element)
J'espère que cela vous aidera!
Merci pour l'aide, mais c'est la même chose :( Parfois cliquez, parfois pas. :(
Essayez d'utiliser TryUntil
. J'espère que cela fonctionne. Le code ci-dessous est en C #
Browser.TryUntil(() => { }, () => Browser.FindElement(By.id("u_0_a")).Exists(), TimeSpan.FromSeconds(3), TimeSpan.FromSeconds(120)); Browser.FindElement(By.id("u_0_a")).Click();
Eh bien, c'est C #, mais j'essaye de l'écrire en JS.
Merci pour votre aide. Le problème n'était pas dans mon code. Le problème venait de https://www.facebook.com/ . Parce que Facebook, change l'ID, et parfois c'était le bouton de connexion parfois un bouton personnalisé de genre. : /
Veuillez essayer de dormir avant de gérer l'opération de clic. Exemple comme ci-dessous:
await driver.sleep(2000) await driver.findElement(By.xpath('element path')).click()
La fonction
click ()
dans JavaScript n'exécute aucun gestionnaire d'événements "click".