2016-10-24 3 views

Antwort

1

Versuchen Sie diesen Code. Die Login-Schaltfläche ist unter einem Rahmen verfügbar. Es ist also notwendig, zu diesem Frame zu wechseln, um auf das Element zuzugreifen.

driver.get("https://campus.uni-stuttgart.de/cusonline/webnav.ini"); 
driver.switchTo().frame(driver.findElement(By.xpath("//*[@name='menue']"))); 
driver.findElement(By.cssSelector("#menue_frame_key_icon > img")).click(); 
driver.switchTo().defaultContent(); 
+0

thx für Sie Antwort. Aber ich habe eine andere Frage. Jetzt möchte ich den Benutzernamen in ein Textfeld eingeben. Diese Textbox ist unter einem Formular verfügbar. Ist es notwendig, zu diesem Formular zu wechseln? – Ildon

+0

Sie müssen nicht zu diesen Formularen wechseln. Allerdings sehe ich einen anderen Rahmen mit name = "detail". Sie müssen zu diesem Frame wechseln, bevor Sie auf Ihren Benutzernamen-Textfeld zugreifen. – Saravanan

0

Sie den Login-Button ID angezeigt ist "menue_frame_key_icon".

dies so sein sollte:

driver.findElement(By.id("menue_frame_key_icon")).click(); 

Sie abwechselnd das Kind Element dieser ID versuchen könnte, die mehrere Arten durchgeführt werden kann. Dies funktioniert jedoch:

driver.findElement(By.cssSelector("#menue_frame_key_icon > img")).click(); 
+0

thx für Sie beantworten. Ich habe beides versucht, aber nichts passiert:/package CampusPackage; public class CampusCode { \t \t public static void main (String [] args) Ausnahme \t { \t \t System.setProperty ("webdriver.chrome.driver", „C wirft: \\ Program Files (x86) \\ SeleniumDrivers \\ chromedriver.exe "); \t WebDriver-Treiber = neuer ChromeDriver(); \t driver.get ("https://campus.uni-stuttgart.de/cusonline/webnav.ini"); \t driver.findElement (By.cssSelector ("# menue_frame_key_icon> img")). Click(); \t \t System.out.println ("Titel:" + driver.getTitle()); \t \t \t} } – Ildon