Ich möchte getText() mit By.id oder By.cssSelector.Selenium getText
Ich habe es geschafft, mein Problem zu lösen, indem ich getAttribute ("value"), aber ich verstehe nicht, warum getText() nicht funktioniert, wie ich es erwarte, und ich könnte es brauchen, so dass alle Hilfe geschätzt wird. Hier
ist die Java:
WebDriverWait wait = new WebDriverWait(driver, 10);
Boolean elementIsPresent = wait.until(ExpectedConditions.textToBePresentInElementValue(By.cssSelector("#general_service_name"),"[reg] general_service_name")); // true
//WebElement general_service_name = driver.findElement(By.cssSelector("#general_service_name"));
WebElement general_service_name = driver.findElement(By.id("general_service_name"));
// Display check
Boolean isDisplayed;
if(general_service_name.isDisplayed()) isDisplayed = new Boolean(true); else isDisplayed = false; //true
String text_empty = general_service_name.getText(); //""
String text_with_value = driver.findElement(By.id("general_service_name")).getAttribute("value"); //"[reg] general_service_name"
Und html:
<input id="general_service_name" type="text" value="[reg] title" name="general_service_name" style="float:left;"/>
getText gibt nur sichtbaren Text zurück und gibt keine HTML-Elemente zurück und gibt keinen versteckten Text zurück. Zum Beispiel, mit Java hatte ich dieses Problem mit einem BR-Tag leer. Anstelle von '.getText()' habe ich '.getAttribute (" innerHTML ")' verwendet, das dann zurückgibt, wonach ich gesucht habe, einschließlich unsichtbarem HTML-Text oder verstecktem Text. – jsherk