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

  • Damien Hayes

    Damien Hayes

    11 Mart 2008
  • Glove and Boots

    Glove and Bo

    1 ŞUBAT 2007
  • newreleaseblitz

    newreleasebl

    13 Ocak 2010