2016-04-05 52 views
0

我需要驗證具有隻讀訪問權限的特定登錄用戶在網頁上不會爲他/她啓用鏈接。硒如何驗證這種行爲,因爲在這種情況下,標籤本身缺失。Selenium with C# - 如何驗證鏈接是隻讀取特定類型的用戶?

我正在嘗試使用這段代碼。

//驗證是否具有隻讀權限登錄時

public static bool ProductNameClickable() 
{ 

     try 
     { 
      WebDriverWait waitForObject = new WebDriverWait(WebDriver, TimeSpan.FromSeconds(2)); 
      waitForObject.Until(ExpectedConditions.InvisibilityOfElementLocated(By.XPath(".//*[@id='resultsTable']/tbody/tr/td/a"))); 
      return true; 
     } 
     catch (Exception e) 
     { 
      Assert.IsTrue(false, "Product name accessible to unautorized user. Error Details:" + e.ToString()); 
      return false; 
     } 
    } 

回答

0

檢查元素是否有與否的產品名稱是可以點擊的。如果該元素不存在,那麼權限工作正常。

下面是java代碼。像在C#中一樣實現它。我相信它不需要更多的努力。

boolean yes = driver.findElements(By.id("dd")).size() != 0; 

if(yes==false){ 
    System.out.println("Priviledges is working"); 
}else{ 
    System.out.println("Priviledges is not working"); 
} 
    } 

OR C#

IWebElement myLink = driver.FindElementSafe(By.Id("myId")); 
if (myLink.Exists) 
{ 
    Console.Write("Priviledges is working "); 
} 
else{ 
     Console.Write("Priviledges is not working "); 
} 

希望它會幫助你:)

+0

大小()函數是不是有在C#不幸...... –

+0

我已經加入了C#代碼。 。希望它能幫到你 –

+0

mu#c不是那麼好..請參考下面的鏈接,如果仍然面臨問題: - http://stackoverflow.com/questions/6521270/webdriver-check-if-an-element-exists –

相關問題