在单击事件之后,我需要等待elements属性更改,然后再继续操作(click事件导致某些元素移出焦点,某些其他元素通过JS获得焦点)
在花了一些时间在Web驱动程序中寻找“ waitForAttribute”(selenium1命令)的可靠替代方法之后,我可以使用下面的代码来工作。但是我不确定这是否是最好的实现…
还有其他更好的解决方案吗?
wait = new WebDriverWait(wedriver1, TimeSpan.FromSeconds(5)); ..... button.Click(); wait.Until(webdriver1 => webdriver2.webelement.GetAttribute("style").Contains("display: block"));
另外,任何人都可以共享一个链接,该链接指向我如何使用WebDriver处理AJAX事件更改。
这是硒的反复出现的问题。我不确定是否存在“最佳”实施。我认为这在很大程度上取决于情况。
关于AJAX驱动的更改,我通常会根据AJAX调用在页面上所做的更改来使用waitForElementPresent或waitForElementNotPresent。