IEnumerable <iwebelement>上的Count Method不返回正确的计数

时间:2015-09-23 00:27:46

标签: c# selenium-webdriver ienumerable

我遇到了一个问题,在集合中我可以看到2个元素,但该集合上的count方法仅将计数返回为1.

解决方法是在count方法之前添加等待100毫秒,它解决了问题,但我仍然不确定它为什么会发生。

我使用以下代码来计算:

IEnumerable<IWebElement> myEmptyElements = null;
var actualElementCount = 0;
myEmptyElements = allElements.Where(e => e.Text != "");

var expectedElementCount = table.RowCount;

//Adding this wait until we can find some better solution
//Thread.Sleep(100);
actualElementCount = myEmptyElements.Count();//this count returns less then number of items in the collection

1 个答案:

答案 0 :(得分:0)

主要原因(可能最有可能)元素在dom中存在的时间更长。我将FindElements与适当的选择器一起使用并应用预期条件并使用rspec等待IWebElements的收集。请参阅文档here