Każdy może wysłać mi przykładowy kod jak sprawdzić elementemJak zweryfikować elementy obecne lub widoczne w selen 2 (Selen WebDriver)
- ispresent
- isvisible
- isenable
- textpresent
w Selenium WebDrvie R przy użyciu Java
Każdy może wysłać mi przykładowy kod jak sprawdzić elementemJak zweryfikować elementy obecne lub widoczne w selen 2 (Selen WebDriver)
w Selenium WebDrvie R przy użyciu Java
Można spróbować czegoś takiego:
WebElement rxBtn = driver.findElement(By.className("icon-rx"));
WebElement otcBtn = driver.findElement(By.className("icon-otc"));
WebElement herbBtn = driver.findElement(By.className("icon-herb"));
Assert.assertEquals(true, rxBtn.isDisplayed());
Assert.assertEquals(true, otcBtn.isDisplayed());
Assert.assertEquals(true, herbBtn.isDisplayed());
Jest to tylko przykład. Zasadniczo deklarujesz i definiujesz zmienne WebElement, które chcesz użyć, a następnie Assert
, czy są one wyświetlane. Używa to asercji TestNG.
bardzo dziękuję .. Spróbuję tego w moim projekcie –
Próbuję powyższego przykładu, ale to nie jest wykonywanie kolejnych kroków, jeśli poprzednie asercja nie działa. Chcę użyć weryfikacji zamiast asercji, aby można było uruchomić kolejne kroki testowe. I również zawiodę cały przypadek testowy, jeśli jakiekolwiek twierdzenie i verficatin się nie powiodą –
Więc to, co zebrałem z twojej odpowiedzi, to to, że chciałbyś, aby test był kontynuowany, nawet jeśli twierdzenie nie powiedzie się. Czy to jest poprawne? – DarthOpto
Patrz poniższy link w celu sprawdzenia obecności elementu na stronie: http://seleniumwebdriverfaq.blogspot.in/2012/03/how-can-i-check-presence-of-webelement_5206.html
Na widocznym czeku można użyć metody .isDisplayed().
Aby upewnić się, że dany element jest obecny można wykonać następujące czynności:
driver.findElements(By.id("id"));
To zwróci tablicę, jeśli rozmiar tablicy jest> 0 to element/s jest obecny.
Również trzeba dostarczyć więcej informacji, takich jak język i co ty próbowałeś przed pytaniem,
Powodzenia
driver.findelement (By.id ("id1")). isDisplayed() ' driver.findelement (By.id ("id2")). ("test"); Tutaj, jeśli element nie jest wyświetlany, nie powiedzie się przypadek testowy i nie przejdzie do kolejnego etapu wykonania. Więc proszę, pomóżcie mi jak radzić sobie z asercją i xcontinue wykonanie testu dla kolejnych kroków w sejenowym webdrierze i testowaniu. Nawet ja też chcę oznaczyć przypadek testowy niepowodzeniem, jeśli jakiekolwiek twierdzenie nie powiedzie się. –
id jest unikalny, powinieneś użyć do tego celu funkcji .findElement(). .findElements() jest na przykład dla. By.ClassName() – Brunis
użyłem java oświadczenia drukowania dla łatwiejszego zrozumienia.
Aby sprawdzić Element prezent:
if(driver.findElements(By.xpath("value")).size() != 0){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
Albo
if(driver.findElement(By.xpath("value"))!= null){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
Aby sprawdzić Widoczny:
if(driver.findElement(By.cssSelector("a > font")).isDisplayed()){
System.out.println("Element is Visible");
}else{
System.out.println("Element is InVisible");
}
Aby sprawdzić Włącz:
if(driver.findElement(By.cssSelector("a > font")).isEnabled()){
System.out.println("Element is Enable");
}else{
System.out.println("Element is Disabled");
}
Aby sprawdzić tekst obecny
if(driver.getPageSource().contains("Text to check")){
System.out.println("Text is present");
}else{
System.out.println("Text is absent");
}
Te przykłady będą lepsze przy użyciu klasy ExpectedConditions. – djangofan
if (driver.findElement (By.cssSelector ("a> font")). IsDisplayed()) { nie działa tak, jak jest wyświetlany, nie zwraca false. zwraca true tylko wtedy, gdy wyświetlono inaczej throws element not found wyjątek ... – Manglesh
Oto mój kod Java dla Selen WebDriver.Wpisz następującą metodę i wywołać ją podczas twierdzenie:
protected boolean isElementPresent(By by){
try{
driver.findElement(by);
return true;
}
catch(NoSuchElementException e){
return false;
}
}
Spróbuj użyć poniższy kod:
private enum ElementStatus{
VISIBLE,
NOTVISIBLE,
ENABLED,
NOTENABLED,
PRESENT,
NOTPRESENT
}
private ElementStatus isElementVisible(WebDriver driver, By by,ElementStatus getStatus){
try{
if(getStatus.equals(ElementStatus.ENABLED)){
if(driver.findElement(by).isEnabled())
return ElementStatus.ENABLED;
return ElementStatus.NOTENABLED;
}
if(getStatus.equals(ElementStatus.VISIBLE)){
if(driver.findElement(by).isDisplayed())
return ElementStatus.VISIBLE;
return ElementStatus.NOTVISIBLE;
}
return ElementStatus.PRESENT;
}catch(org.openqa.selenium.NoSuchElementException nse){
return ElementStatus.NOTPRESENT;
}
}
Aby sprawdzić, czy element ma widoczne musimy użyć element.isDisplayed();
Ale jeśli trzeba sprawdzić obecność elementu w dowolnym miejscu w Domu możemy wykorzystać następujące metody
public boolean isElementPresentCheckUsingJavaScriptExecutor(WebElement element) {
JavascriptExecutor jse=(JavascriptExecutor) driver;
try {
Object obj = jse.execute("return typeof(arguments[0]) != 'undefined' && arguments[0] != null;",
element);
if (obj.toString().contains("true")) {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: SUCCESS");
return true;
} else {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: FAIL");
}
} catch (NoSuchElementException e) {
System.out.println("isElementPresentCheckUsingJavaScriptExecutor: FAIL");
}
return false;
}
Metoda execute (String, WebElement) jest niezdefiniowana dla typu JavascriptExecutor –
Co próbowaliście? Czytałeś jakieś samouczki? W jakim języku? DO#? Jawa? PHP? Świnia łacińska? – Arran
Chcę spróbować w języku Java. Proszę wysłać mi samouczki lub dokument pomocowy dla sterownika internetowego selenu. Będę ci wdzięczny. proszę pomóż mi –