如果我实例化WebElement对象,getAttribute调用(以及提取有关元素的信息的其他调用)是否会成功返回正确的数据,即使在创建对象后数据发生了变化?
我为元素表创建了一个对象映射,所以我担心如果我对这个映射中存储的任何元素进行更改,我需要重新设置对象为了更新地图更新。这让我想知道Selenium的WebElement是如何工作的:他们在创建时读取所有属性数据和其他信息,然后将静态数据吐出,或者它们只是包含对“真实”UI元素的引用和每次动态检索数据?
答案 0 :(得分:2)
我相信它会在您触发get Attribute
时读取数据。
获取元素的给定属性的值。将返回当前值,即使已在加载页面后修改了此值。
答案 1 :(得分:1)
如果在重新编译页面后元素的id没有改变,Selenium将检索日期'live'否则,它将抛出NoSuchElementException。