JMeter中WebDriverWait实例化失败报错求助
解决JMeter WebDriver采样器中WebDriverWait构造函数参数不匹配问题
问题原因
Selenium 4.x版本中,org.openqa.selenium.support.ui.WebDriverWait的构造函数已不再支持直接传入整数类型的超时秒数,原有的WebDriverWait(WebDriver driver, long timeoutInSeconds)构造方法已被废弃,需使用基于java.time.Duration的构造方法。
解决方案
修改代码,导入java.time.Duration类,通过Duration.ofSeconds()方法创建超时时长对象,再传入WebDriverWait构造函数。
修正后的完整代码
var ui = JavaImporter(org.openqa.selenium.support.ui) var duration = JavaImporter(java.time.Duration) var wait = new ui.WebDriverWait(WDS.browser, duration.Duration.ofSeconds(120)) WDS.sampleResult.sampleStart() WDS.browser.get('http://jmeter-plugins.org') WDS.sampleResult.sampleEnd()
补充说明
- 若需使用其他超时单位(如分钟、毫秒),可将
ofSeconds替换为ofMinutes、ofMillis等对应方法。 - 确保JMeter的Selenium WebDriver支持包版本与代码中使用的Selenium API兼容,避免版本差异引发的API变更问题。
内容的提问来源于stack exchange,提问作者anubhav verma
相关产品推荐
相关产品推荐

