Stellen Sie sicher, dass browser geöffnet von webdriver ist immer im Fokus
Wenn das browser-Fenster nicht im Fokus, alle webdriver Identifikationen auf der aktuellen Seite scheitern.
Wie kann man den browser in den Vordergrund gerückt werden, mit webdriver?
- Welchen browser verwenden Sie? Firefox, IE, Chrome?
- Warum würden Sie nicht die Instanz, die den Fokus besitzen? Wenn Sie versuchen, normal zu arbeiten auf dem computer laufen die tests, dann ja, das funktioniert nicht gut, da Selen verwendet OS native Tastatur und klicken Sie auf Anweisungen, die Sie stören würde. Manchmal,
driver.switchTo().defaultContent()
(und/oderswitchTo().activeElement()
) hilft - meist auf den IE. Was ist dein Anwendungsfall?
Du musst angemeldet sein, um einen Kommentar abzugeben.
sollte den trick tun!
executeScript("window.focus();")
hat bei mir nicht funktioniert in der neuesten Chrome (v47 an der Zeit von diesem post)Jedoch fand ich einen hack in eine andere Frage die hat funktionieren in dieser version von Chrome.
Hier sind die Allgemeinen Schritte, da die Frage nicht angeben, die Selenium API-Sprache:
Umsetzung in
webdriverjs
, die ich bin mitDies funktioniert für mich. Nach dem code, der den browser öffnet, geben Sie den folgenden Codeausschnitt:
Selen 3.0 nimmt diese:
attention
Nachricht.Festlegen des Fokus auf die "Treiber-Optionen" sollte funktionieren: