我尝试了这些(在元素不存在的情况下)并且总是得到
OpenQA.Selenium.NoSuchElementException
If driver.FindElement(By.XPath("//input[@id='username']")).Displayed = True Then
driver.FindElement(By.XPath("//input[@id='username']")).Click()
End If
If driver.FindElement(By.XPath("//input[@id='username']")) = True Then
driver.FindElement(By.XPath("//input[@id='username']")).Click()
If driver.FindElement(By.XPath("//input[@id='username']")).Displayed Then
driver.FindElement(By.XPath("//input[@id='username']")).Click()
答案 0 :(得分:0)
您需要使用try catch块来处理此问题,然后在不为null的元素上执行操作。
webelement ele = null
try
{
ele = driver.FindElement("your condition");
}
catch(NoSuchElementException ex)
{
#do-nothing
}
if(ele != null)
{
#perform your action
}
答案 1 :(得分:0)
假设WebDriver API在VB和Java中都是相同的,则可以使用此处建议的相同方法:https://stackoverflow.com/a/9188374/5803406。