2017-09-09 4 views
0

Element ist nicht sichtbar, Fehler, auch wenn meine XPath einzigartig istElement nicht sichtbar Fehler ist, auch wenn meine XPath einzigartig ist

//System.setProperty("webdriver.chrome.driver", "C://chromedriver.exe"); 

//WebDriver driver= new FirefoxDriver(); 
//WebDriver driver= new ChromeDriver(); 

driver.manage().window().maximize(); 
driver.get("https://www.goindigo.in/"); 

driver.findElement(By.linkText("One Way")).click(); 
driver.findElement(By.xpath("//button[@class='btn buttonGlbl btn-close button-trigger']")).click(); 
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); 
driver.findElement(By.xpath("//div[@class='innertab-content one-way-tab-ctnt']//li[@class='city-dropdown destination-dropdown ps-destination-dropdown without_label']//div[@class='city-dropdown-list city-name-to']//ul//li[3]")).click(); 
} 
}// 
+0

Ja, können Sie ElementNotVisible Fehler, auch wenn Sie einzigartigen Selektor ... Also, was ist Ihre Frage? – Andersson

+0

Ich kann die Stadt nicht aus dem Drop-down-Menü auswählen. Ich bin mir nicht sicher, wie es weitergeht – Abhishek

Antwort

0
/System.setProperty("webdriver.chrome.driver", "C://chromedriver.exe"); 

//WebDriver driver= new FirefoxDriver(); 
//WebDriver driver= new ChromeDriver(); 

driver.manage().window().maximize(); 
driver.get("https://www.goindigo.in/"); 

WebElement onewayLink=driver.findElement(By.linkText("One Way")); 
onewayLink.click(); 
WebElement btnElement=driver.findElement(By.xpath("//button[@class='btn buttonGlbl btn-close button-trigger']")); 

WebDriverWait wait= new WebDriverWait(driver,20); 
wait.until(ExpectedConditions.visibilityOf(btnElement)); 
btnElement.click(); 
driver.findElement(By.xpath("//div[@class='innertab-content one-way-tab-ctnt']//li[@class='city-dropdown destination-dropdown ps-destination-dropdown without_label']//div[@class='city-dropdown-list city-name-to']//ul//li[3]")).click(); 
} 
}// 
+0

Ich habe das jetzt versucht, aber der gleiche Fehler. Ich kann auf OK klicken, aber danach kann ich die Stadt nicht aus dem ersten Drop-down-Menü auswählen. – Abhishek

+0

Ok lass mich es nochmal versuchen – iamsankalp89

+0

Wenn es tropfen ist musst du es wählen – iamsankalp89

0

Above Antwort, niemand die Ursache getroffen, hat es nichts zu tun mit der Notwendigkeit, auf ein Element zu warten.

Die Hauptursache ist, dass Sie auf das Eingabefeld von Von/Nach Stadt klicken müssen, um die Städteliste zu öffnen, und dann auf die gewünschte Stadt klicken.

Dies ist ein Selen-Design-Prinzip: ein Element muss sichtbar sein, bevor Selen es klicken.

Das selen desinger hoffen es kann simulator operationen aus benutzerperspektive, wie wir wissen, benutzer müssen die stadt liste sehen, bevor er eine wählen kann. Also müssen wir Selen auch dazu bringen, zuerst die Stadtliste zu sehen.

Aber eine Ausnahme, wenn Sie eine Option aus einer Auswahl auswählen möchten, können Sie direkt auf die gewünschte Option klicken, müssen nicht die Optionen Pop-up zuerst machen.

können Sie solche Frage von unten Link finden, und ich gebe die Detailantwort dafür aus.
Using firefox webdriver trying to load the option Name from dropdown but not working?

-Code-Schnipsel Ihr Problem zu beheben:

driver.get("https://www.goindigo.in/"); 
// click 'One Way' tab 
driver.findElement(By.css(".one-way-tab")).click(); 
// Click 'OK' on Information pop-up 
driver.findElement(By.css(".buttonGlbl.btn-close")).click(); 

// Click 'From' city input box for 'One Way' 
driver.findElement(By.css("#oneWay .origins-value.city-name-value")).click(); 
// Choose city 'Delhi' 
driver.findElement(By.css("#oneWay .origin-city-name")) 
     .findElement(By.partialLinkText("Delhi")) 
     .click(); 

// Click 'To' city input box for 'One Way' 
driver.findElement(By.css("#oneWay .destinations-value.city-name-value")).click(); 
// Choose city 'Indore' 
driver.findElement(By.css("#oneWay .dest-city-name")) 
     .findElement(By.partialLinkText("Indore")) 
     .click(); 
+0

Hey, Danke, ich kann es mit Ihrem Code ausführen. Aber wenn Scripts ausgeführt werden, wird automatisch Delhi in der Liste ausgewählt, so dass es anfänglich fehlgeschlagen ist, aber ich habe in eine andere Stadt gewechselt und es hat funktioniert. Ich werde sehen, warum es Delhi automatisch auswählt. – Abhishek

Verwandte Themen