2017-08-14 11 views
1

Ich habe Probleme mit diesen letzten Zeilen arbeiten. Der letzte Teil der Suchschaltfläche ist dort, wo er bricht. Es sagt "unbekannter Fehler: kann Element nicht fokussieren". Die letzten Zeilen sind einfach nur auf den Suchknopf klicken.Selen Webtreiber Klicken Sie auf

Hier ist der HTML-Code im bekommen es von. Dies ist der Suchknopfcode.

<img class="Banner-Search-Type-search-ImageStyle" 
src="images/BannerImages/go-img.png" id="btnsearch"> 

Hier ist mein Code.

var mfgPartNumber = "CRCW12061R00FKEA"; 
     IWebDriver driver=new ChromeDriver(@"C:\Users\josimpso\AppData\Roaming"); 
     driver.Navigate().GoToUrl("https://app.siliconexpert.com/CMOMFX/customerlogin.html"); 
     //Set Username 
     IWebElement setUserName = driver.FindElement(By.ClassName("logininput")); 
     setUserName.SendKeys("userName"); 
     //Set Password 
     IWebElement setPassword = driver.FindElement(By.Name("password")); 
     setPassword.SendKeys("Password"); 
     // Click login button 
     IWebElement loginButton = driver.FindElement(By.Id("loginsubmit")); 
     loginButton.SendKeys(OpenQA.Selenium.Keys.Enter); 

     // Now search based on mfgPartNumber 
     IWebElement searchBox = driver.FindElement(By.Id("txtsearch")); 
     searchBox.SendKeys(mfgPartNumber); 
     // Press enter on the search 
     IWebElement searchButton = driver.FindElement(By.Id("btnsearch")); 
     searchButton.SendKeys(OpenQA.Selenium.Keys.Enter); 
+0

Auch Wie mache ich die Sendetaste rechts auf die Schaltfläche klicken? Nicht auf Enter klicken. Wenn Sie auf die Eingabetaste klicken, wird nicht nach dem Los-Button gesucht. – weknowgp

+0

Warum bekommen Sie nicht einfach den Button By.Id, wie Sie es mit dem Textfeld txtsearch getan haben? – Fran

+0

Das hat auch nicht funktioniert. Ich habe es gerade versucht. Ich werde es zu Id wechseln. ID funktioniert auch nicht. – weknowgp

Antwort

1

Ich bin nicht in der Lage, es zu testen jetzt leider, aber Ihr Bild sollte in einem <a>-Tag sein. Sie führen den Klick im <a> Tag, nicht im Bild

0

Es kann wegen der SendKeys sein, die nicht erfolgreich gesendet wurde.

Anstelle von SendKeys sollten Sie ActionClass verwenden. Dies ist eine andere Methode zum Senden von Schlüsseln.

Für z.B.

Actions new_action = new Actions(driver); 

new_action.sendKeys("VALUE");

Verwandte Themen