Question

J'écris mes scripts pour FF mais espérait avec peu de travail, ils seraient également fonctionner sur les autres navigateurs, mais il semble pilote IE a des problèmes de bouton?

Je simple webelement.click () sur un bouton qui ne jette pas une erreur, mais ne clique pas sur le bouton. en FF son amende. Je peux obtenir un texte, obtenir la valeur, donc je sais que la déclaration de trouver est ok juste ne cliquez dessus.

pensées ou aide serait grand

Juste faire

WebElement element;
element = driver.findElement(By.id("pageheader_login"));
element.click();

HTML - Le contrôle a 3 boutons sur ce que je ne suis intéressé pour l'instant avec le login

<div id="_ctl0_pageheader_navcontainer">
  <div id="phwelcome">

    <br class="clear" />
  </div>
  <span id="navtext">

    <a id="_ctl0_pageheader_lnkRegister" class="logichref" 
       href="http://Register/1">Register Today</a>
    <label id="_ctl0_pageheader_lblRegisterBar" class="barhide">| </label>

    <a id="_ctl0_pageheader_customerconnection" class="logichref" 
       href="http://test.com" target="_blank">Help & Training</a>
    <label class="bar">| </label>
    <a class="logichref" href="http://test.aspx"
       onmouseover="window.status='';return(true);" 
       onmouseout="window.status='';return(false);"
       target="_blank">What's New</a> 
    <label class="bar">| </label>
    <a id="_ctl0_pageheader_login" class="lbOn loginModal" 
       href="http://test/loginlightbox.aspx">Login</a>
  </span>
</div>     
Était-ce utile?

La solution

a le même problème, cliquez sur ne fonctionne pas avec mon IE 8. J'ai trouvé une solution de contournement où je fais un element.sendKeys ( « \ n ») pour effectuer le clic (essentiellement je viens appuyez sur Entrée sur le bouton). Pas très propre, mais cela fonctionne jusqu'à ce que le bug est corrigé!

Autres conseils

J'ai presque renoncé à WebDriver que je ne pouvais pas obtenir la méthode cliquez sur WebElement à la fonction. Mais pour une raison quelconque, j'ai changé mon zoom IE de 125% à 100% et le clic a fonctionné. Je ne sais pas si cela est un bug connu avec WebDriver mais il m'a presque fait tout jeter jusqu'à ce que je trouve une solution.

J'ai fait face à la même question avec IE 8 où le WebDriver n'a pas pu cliquer sur tout a href = « tag » sur la page HTML en cours de test

La shessuky de solution fournie a fonctionné pour moi; Ce réglage est-il DEUX capacités ignoreZoomSetting et nativeEvents comme suit

  • caps.setCapability ( "ignoreZoomSetting", true);
  • caps.setCapability ( "nativeEvents", false);

Je pense que vous pourriez avoir à instancier InternetExplorerDriver () en utilisant les paramètres org.openqa.selenium.Capabilities comme suit:

    DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
    caps.setCapability("ignoreZoomSetting", true);

    // Setting attribute nativeEvents to false enable click button in IE
    caps.setCapability("nativeEvents",false);
    WebDriver driver = new  InternetExplorerDriver(caps);

Espérons que cela peut vous aider;

Selon votre code HTML, le id est _ctl0_pageheader_login. Il peut être généré de manière dynamique et peut changer.

Vous pouvez essayer de localiser By.linkText("Login") ou By.className("loginModal")

Il est peut-être quelque chose à voir avec la vitesse de charge, essayez d'ajouter un ImplicitlyWait

Sélénium 2.0b3 IE WebDriver, pas de tir Cliquez

Si vous utilisez un test Selenium automatisé IE11 avec la fenêtre du navigateur ouvert sur un moniteur à écran tactile (par exemple un ordinateur portable tactile Windows 8), essayez d'exécuter le test avec la fenêtre du navigateur ouvert dans un écran non tactile.
La méthode .cliquez () d'origine devrait fonctionner correctement sans toutes les solutions de contournement de code.

Voir ma réponse complète de fond https://stackoverflow.com/a/31397650/115704 sur une question similaire StackOverflow sélénium 2.0b3 IE WebDriver, pas de tir Cliquez sur .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top