SORU
3 Kasım 2011, PERŞEMBE


Selenyum WebDriver - eğer eleman varsa Test

eğer bir öğe varsa test etmek için nasıl bir yol var mı? Herhangi bir findElement yöntem ki sonunda bir istisna, ama bu değil ne istiyorum, çünkü o zaman böyle bir element yok ve bu iyi, değil başarısız bir test, bu yüzden bir istisna olamaz çözüm.

Bu yazı buldum: Selenium c# Webdriver: Wait Until Element is Present Ama bu C# ve bu işte pek iyi değilim. Herkes Java kodu çevirebilir? Üzgünüm Beyler ben Eclipse bunu denedim ama Java kod girmek istemiyorum.

Bu kod

public static class WebDriverExtensions
{
    public static IWebElement FindElement(this IWebDriver driver, By by, int timeoutInSeconds)
    {
        if (timeoutInSeconds > 0)
        {
            var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(timeoutInSeconds));
            return wait.Until(drv => drv.FindElement(by));
        }
    return driver.FindElement(by);
    }
}

CEVAP
8 ŞUBAT 2012, ÇARŞAMBA


findElement yerine findElements kullanın.

findElements Eğer eşleşen bir öğe bir istisna yerine yoksa boş bir liste döndürür.

Bir elemanın mevcut olduğunu kontrol etmek için, bu deneyebilirsiniz

Boolean isPresent = driver.findElements(By.yourLocator).size() > 0

Bu ise en az bir öğe eğer var ise bulunamadı false ise true değerini döndürür.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonathan D.

    Jonathan D.

    3 Kasım 2006
  • Maschine Tutorials

    Maschine Tut

    15 ŞUBAT 2011
  • YEAH1TV

    YEAH1TV

    19 ŞUBAT 2009