2016-12-19 1 views
0

Hei. Ich habe automatisierte Tests mit Selen erstellt, aber ich bin auf einige Probleme mit IE gestoßen, der Klick funktioniert nicht. (Scheint wie ein häufiges Problem, bei dem der Treiber nur einfriert und es keine Zeitüberschreitung oder irgendetwas gibt).Java Selen Click Override oder eigene erstellen

Als Workaround habe ich eine Methode erstellt, die Javascript Executor verwendet, um den Klick stattdessen zu tun.

Das Problem, das ich habe, ist, dass ich alle meine Tests neu schreiben müsste, um sie auf IE arbeiten zu lassen.

@Test 
    public void Simpletest(){ 

    Frontpage.SearchBox.sendKeys("DeadPool"); 
    Frontpage.GOButton.click(); 
    Frontpage.FirstREsult.click();  
    } 

Würde zu

@Test 
     public void Simpletest(){ 
    Frontpage.SearchBox.sendKeys("DeadPool"); 
    IEClick(Frontpage.GOButton); 
    IEClick(Frontpage.FirstREsult); 
} 

Dies ist eine Lösung geändert werden müssen, aber das, dass ich hätte alle meine Tests wiederholen, dies zu umgehen. Das scheint ein bisschen zu viel. Also frage ich mich, ob es möglich ist, meinen eigenen Klick zu erstellen?

Wunsch Lösung

Frontpage.FirstREsult.MyClick(); 

Wo in MyClick Ich habe bereits alle Fälle mit verschiedenen Browsern behandelt etc.So Ich konnte nur das Klicken mit meinem eigenen Klick Suchen und Ersetzen.

Antwort

0

1) Zunächst können Sie einen Browser Namen von Fähigkeiten erhalten und mit js oder native Klick je nach Browser

Capabilities caps = ((RemoteWebDriver) driver).getCapabilities(); String browserName = caps.getBrowserName();

2) Auch können Sie immer einen js Klick verwenden. Es ist eine sehr seltene Situation, wo Sie die native

benötigen können