使用Selenium WebDriver获取项目列表将获得带有空白文本的项目

时间:2018-07-20 00:24:11

标签: c# selenium

我的代码如下:

    var wait = new WebDriverWait(Driver.Instance, TimeSpan.FromSeconds(5));

    var primaryAgendaListContainer = wait.Until(SeleniumExtras.WaitHelpers.ExpectedConditions.ElementIsVisible(By.CssSelector("ul#PrimaryAgendaIdTemp_listbox")));

    var primaryAgendaList = primaryAgendaListContainer.FindElements(By.TagName("li"));
    foreach(var primaryAgendaElement in primaryAgendaList)
    {
        System.Diagnostics.Debug.WriteLine(primaryAgendaElement.Text);
    }

但是每个元素的文本为空。我可以使用Chrome开发人员工具,看到li的文本没有空白。我得到的元素数量正确,但文本不正确。我在做什么错了?

2 个答案:

答案 0 :(得分:0)

可能在LI和文本之间还有另一个标签。

尝试更改代码以执行此操作,然后告诉我结果。

var primaryAgendaList = primaryAgendaListContainer.FindElements(By.XPath("//li/*"));

答案 1 :(得分:0)

在需要文本的元素上使用GetAttribute("innerHTML")。那应该做得很好。