我是selenium的新手所以我正在浏览 selenium文档,并且在文档下面是click()方法的说明:
点击()
单击此元素。如果这会导致加载新页面,则应丢弃对此元素的所有引用,并且对此元素执行的任何进一步操作都将抛出StaleElementReferenceException。请注意,如果通过发送本机事件(这是大多数浏览器/平台上的默认设置)完成click(),则该方法将不等待下一页加载,并且调用者应验证自己。
任何人都可以帮助我理解上述解释的确切含义吗? 如果提供一个支持性的例子,这将是一个很大的帮助。
由于
答案 0 :(得分:0)
例如,当您具有要单击的按钮时,您想调用selenium提供的.click()方法。现在,对于“如果这导致加载新页面,您应该丢弃对该元素的所有引用,并且对该元素执行的任何进一步操作都会引发StaleElementReferenceException”这一部分,这是告诉您,如果单击此特定按钮会导致例如一个弹出窗口出现,然后selenium不会自动切换到该弹出窗口,您必须将其包含在代码中。如果您不这样做,并尝试单击弹出窗口中的元素,则将获得Exception。此外,最后一部分指出,当您最初单击按钮时,硒不会显式等待弹出窗口的加载。您必须告诉selenium等待该弹出窗口,以防您要对其执行某些操作,例如验证标签或获取数据等。 希望这有助于澄清一些事情。 祝好运。硒很有趣