import org.openqa.selenium.*;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
//var wait = new WebDriverWait(WDS.browser, 5000)
//var wait = new org.openqa.selenium.support.ui.WebDriverWait(WDS.browser, Java.time.Duration.ofSeconds(60))
WDS.sampleResult.sampleStart()
WDS.browser.get(url)
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id('idSIButton9')));
var nextbtn=WDS.browser.findElement(By.id('idSIButton9'));
nextbtn.click();
WDS.sampleResult.sampleEnd()
我希望它能在不出错的情况下运行。但它给了我下面的错误给长整型变量的错误。哪个构造函数将与新版本匹配?enter image description here
javax.script.ScriptException: javax.script.ScriptException: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: org.openqa.selenium.support.ui.WebDriverWait(org.openqa.selenium.chrome.ChromeDriver, Long)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:158)
at java.scripting/javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:262)
at com.googlecode.jmeter.plugins.webdriver.sampler.WebDriverSampler.sample(WebDriverSampler.java:101)
at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:638)
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558)
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256)
at java.base/java.lang.Thread.run(Thread.java:1623)
这是我用Jmeter编写的示例代码。等待条件的注解变量出错。我试了两种方法。它给出了两种等待条件的错误。可能存在兼容性问题。作为其新版本的jmeter。只有等待条件给出错误。我正在使用所有更新版本。Jmeter版本是5.5。所有其他的插件也都更新了。如果在等待条件上提供任何输入,将很有帮助。它是用Groovy语言写的,尝试了所有的方法。Mothing正在等待条件下工作。
1条答案
按热度按时间hvvq6cgz1#
查看JMeter安装的“lib”文件夹并查找
selenium-*
库。它应该包含版本。然后检查Selenium JavaDoc以获取特定的版本。如果您通过WebDriver Sampler插件获得了Selenium库,则当前版本4.9.1.0基于Selenium 4.9.1.0,并且API合约规定第二个参数不应为Long,而应为Duration
因此,等效的“新”代码应该是这样的:
有关JMeter中Groovy脚本的更多信息:Apache Groovy: What Is Groovy Used For?