我正在使用TestStack的Selenium包装器Seleno进行UI测试。我似乎偶然发现了一些我无法确定其来源的奇怪行为。
假设我试图找到DOM中可能存在或不存在的元素:
public void FindStuffByCss(string selector)
{
Find.OptionalElement(By.CssSelector(selector), TimeSpan.FromMilliseconds(200));
}
如果在DOM中找不到任何元素,我希望这个函数在200毫秒后超时,但实际上需要10秒!起初,我认为这是因为我使用的cssSelector,但它似乎不是这样的情况..因为以下500毫秒后超时:
public void FindStuffByJquery(string selector)
{
Find.OptionalElement(By.jQuery(selector), TimeSpan.FromMilliseconds(200));
}
除非JQuery比Selenium / Seleno用于执行其By.CssSelector查询的速度快20倍,否则这有点奇怪。对我来说,看起来有一个你无法覆盖的默认最小超时。
有没有人注意到类似的行为?我真的想知道为什么,如果有办法覆盖它。