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

  • Ciaran Blumenfeld

    Ciaran Blume

    20 NİSAN 2009
  • ShoSho

    ShoSho

    20 Ocak 2010
  • YouChewBu

    YouChewBu

    26 Ocak 2009