gpt4 book ai didi

c# - Selenium:如何识别 if 语句中的元素?

转载 作者:行者123 更新时间:2023-11-30 15:13:58 24 4
gpt4 key购买 nike

在 Visual Studio 中使用 Selenium。我正在编写一个测试用例,我首先需要查看特定元素是否存在,然后才能继续。

当我尝试在这样的 if 语句中识别元素时:

  if (driver.FindElement(By.XPath("//lina-device-information/div[1]/div[2]/lina-list-wrapper[3]/div/div/lina-insurance-information")))
{
//Do stuff
}
else
{
//End test
}

我收到错误消息:“错误 CS0029 无法将类型‘OpenQA.Selenium.IWebElement’隐式转换为‘bool’”

是否无法在 if 语句中使用 FindElement 作为条件,或者我做错了什么?

最佳答案

如果该元素不存在于 DOM 中,则在使用 findElement 时将抛出 NoSuchElementException
尝试使用返回列表的 findElements。然后检查列表是否为空。这样您就不必处理异常。

试试这个:

if (driver.FindElements(By.XPath("//lina-device-information/div[1]/div[2]/lina-list-wrapper[3]/div/div/lina-insurance-information")).Count > 0)
{
// Do stuff
// Element found
}
else{
// Element not found
}

关于c# - Selenium:如何识别 if 语句中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56664777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com