Select <li> 个来自 div/ul 的元素

Select <li> elements from div/ul

我正在学习 selenium/C#/Nunit 尝试编写用于选择 li 的测试。 [元素]

这是我的代码行:

dropdown= driver.FindElement(By.XPath(".//div[@class='listview listview-scroll']/ul/li[@id='ext-gen1043']"));
dropdown.Click();

我收到了 Selenium.NoSuchElementException 消息。

我也尝试过 Thread.Sleep(10000);,但我无法解决这个问题。

使用css选择器:

dropdown= driver.FindElement(By.CssSelector("li[data-item-marker=Defense]"));  // the same way find all other li you need

ext-gen1043是动态生成的。永远不要使用这样的定位器。即使在您的屏幕截图定位器上也已更改。

此外,一旦您了解如何使用 implicit/explicit 等待,请尽快摆脱 Thread.Sleep(10000)。这是使用 Sleep.

的不良做法