当我们在谷歌搜索文本框中输入文本时,它会自动建议选项,对象会发生变化。现在我想单击“搜索”按钮,即之前的“Google 搜索”。我创建了带有 name 属性的“Google 搜索”按钮,“btnK”是值。现在,随着属性更改为“btnG”,我如何检索属性,然后使用此属性值来标识对象。这听起来像是死胡同,因为对象已更改,因此我们无法检索其值。我相信我们可以在这里使用动态属性。但我被困在这里了!!我正在使用 selenium Web 驱动程序和 Java。
感谢任何帮助!!!
最佳答案
您不能使用以前的属性作为应用程序的行为,因此您需要相应地指示 selenium。尽管有一种解决方案需要使用“Multiple Criteria xpath”
使用此 xpath 进行点击操作
driver.findElement(By.xpath("//button[@name='btnG' or @name='btnK']")).click();
driver.findElement(By.id("gs_htif0")).gettext(); // this will retrieve your value from text box
这样,如果selenium找到任何一个元素,那么它就会点击相同的元素。
希望对你有帮助:)
关于java - 获取同一元素的运行时属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32436385/