首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >wait驱动程序隐式等待动态ID

wait驱动程序隐式等待动态ID
EN

Stack Overflow用户
提问于 2013-11-14 03:17:20
回答 2查看 1.5K关注 0票数 1

我在Java中使用Webdriver,我需要等待一个具有动态ID的元素出现在web页面上。

例如,对于隐式等待,我有以下语句: WebDriverWait wait =新WebDriverWait(驱动程序,30);

dynamicID是我正在等待的元素ID的前缀,通常它带有一个我无法真正预测的数字。

这里有一些好的答案,Finding an element by partial id with Selenium in C#

我试图将我的代码更改为

代码语言:javascript
运行
复制
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id(^="dynamicID")))

而且它不起作用。

我试着使用页面工厂:

代码语言:javascript
运行
复制
@FindBy(id ^= "dynamicID")
private WebElement something;

而且它也不起作用。

因此,我不得不问: 1.如何在隐式等待语句中使用ID部分匹配? 2.如果我使用页面工厂,并假设@FindBy工作正常,那么如何在隐式等待中使用这个元素something

代码语言:javascript
运行
复制
wait.until(ExpectedConditions.visibilityOfElementLocated(something)) 

不管用。

提前谢谢。

EN

Stack Overflow用户

发布于 2013-11-14 09:05:24

可以对id使用部分匹配,但必须使用xpathcss选择器。

代码语言:javascript
运行
复制
wait.until(ExpectedConditions.visibilityOfElementLocated(By.CssSelector("tag[id^='dynamicID']")))

其中tag是元素的标记。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19968877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档