java判断按钮是否可以按下,java – 检查按钮是否可用?如果不是等待5秒再检查一下?...

该博客介绍了如何在Selenium中优雅地处理按钮点击异常。当尝试点击按钮时,如果按钮不可点击,作者建议使用Fluent Wait代替简单的隐式等待。Fluent Wait会每5秒检查一次按钮是否可点击,最多等待30秒。提供的代码示例展示了如何实现这一功能,以避免程序直接跳转到错误处理部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本上我正试图看看是否能够点击一个按钮.如果不是,我想再试一次.所以我需要某种goto函数来返回我的代码的早期行.虽然我怀疑我写得非常糟糕,而且本来可以做得更轻松.

try {

driver.findElement(By.xpath("//button[@id='btn_ok']")).click();

}catch (Exception e) {

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

}

对于上下文,这里是问题的按钮罪魁祸首.

解决方法:

您可以使用流利的等待.这将检查按钮是否每5秒可点击30秒.您可以根据需要调整时间.尝试此代码并提供反馈是否有效.

Wait wait = new FluentWait(driver)

.withTimeout(30, TimeUnit.SECONDS)

.pollingEvery(5, TimeUnit.SECONDS)

.ignoring(NoSuchElementException.class);

WebElement clickseleniumlink = wait.until(new Function(){

public WebElement apply(WebDriver driver ) {

return driver.findElement(By.xpath("//button[@id='btn_ok']"));

}

});

clickseleniumlink.click();

标签:java,wait,selenium-webdriver,selenium,goto

来源: https://codeday.me/bug/20190627/1302799.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值