2016-10-20 112 views
-1

我是新來的自動化世界,我試圖verfy在列表中的項目,以查看它是否已被刪除或不..我使用了下面的語法,但它說公司發現,這是如果沒有顯示它不是假設的答案..請幫助在Selenium webdriver驗證

internal void verifycompany() 

{ 

     Thread.Sleep(1000); 
     int b = 1; 
     bool CompanyName = Driver.driver.FindElement(By.XPath(".//*[@id='companies']/tr[" + b + "]/td[1]")).Displayed; 
     if (CompanyName == false) 
     { 
      Console.WriteLine("company not found, test succesful"); 
      Base.test.Log(LogStatus.Info, "company not found, test succesful"); 
     } 
     else 
     { 
      b++; 
      Base.test.Log(LogStatus.Info, "Company found, test unscuccesful"); 
      } 
     } 
+1

你可以分享相關的HTML嗎? –

回答

0

不幸的是,isDisplayed不返回false,它拋出一個異常,說明它無法找到(天啊感謝)。

我做的是創建一個可重用的方法,我可以傳入一個元素,它會通過try catch拋出它,如果發現則返回true;如果拋出異常,則返回false。

喜歡的東西下面的 - 我用java,但它應該幫助你找出你身邊的問題的方式:

public boolean isDisplayed(WebElement webElement) { 
    try { 
     return element.isDisplayed(); 
    } catch (NoSuchElementException e) { 
     return false; 
    } 
} 

如果你不希望創建一個可重複使用的方法,只是把你的發現元素線嘗試捕捉。

boolean CompanyName; 

try { 
    CompanyName = findElementAndIsDisplayedCode; 
} catch (NoSuchElementException e) { 
    CompanyName = false; 
} 
+0

感謝哥們,得到了邏輯。乾杯 – Malcolm

相關問題