Selenium C#-NoSuchElementException将CssSelector传递给方法

时间:2018-12-13 20:37:13

标签: c# selenium selenium-webdriver css-selectors nosuchelementexception

我试图将CssSelector传递到自定义的wait方法中,但是我正在努力弄清为什么找不到元素。

这是BasePage.cs上的CssSelector

public IWebElement ValidationErrorsPopup => Driver.FindElement(By.CssSelector("[class='_100 bigpad']"));

这是我在WebElementExtensions.cs中的自定义方法

public static void WeElementsLocatedByCssSelector(this IWebElement element, int sec = 10)
{
    WebDriverWait wait = new WebDriverWait(Driver.Browser(), TimeSpan.FromSeconds(sec));
    wait.Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(By.CssSelector(element.ToString())));
    Console.WriteLine(element);
}

然后我在BasePage.cs中调用它,并照这样传递:

ValidationErrorsPopup.WeElementsLocatedByCssSelector();

如果我只是简单地传递CssSelector,则此方法有效,但是当我尝试将元素作为字符串传递时,它似乎并不喜欢它。

我在这里做错了什么?任何帮助将不胜感激!

0 个答案:

没有答案