如何在 Jmeter 中使用 JavaScript 执行器进行 Webdriver 采样器



我需要在 Jmeter 中使用下面的 JavaScript 执行器行作为 webdriver 采样器。

WebElement el1 = driver.findElement(By.xpath("//div/button/span[contains( text((,'View Report'(]"((; JavascriptExecutor executor1 = (JavascriptExecutor(driver; executor1.executeScript("arguments[0].click((", el1(;

我尝试使用以下行,但在日志中收到以下错误消息var btnView = pkg.By.xpath("//div/button/span[contains( text((,'View Report'(]"(;WDS.browser.executeScript("document.getElementByXpath(arguments[0](.click((;", btnView (错误信息:错误 - com.googlecode.jmeter.plugins.webdriver.sampler.WebDriverSampler:参数属于非法类型:org.openqa.selenium.By$ByXPath

有没有办法在Webdriver Sampler中使用javascript执行器?

  1. 你不需要这个强制转换为JavascriptExecutor
  2. 你不需要这个arguments[0].click();在 JavaScript 中就足够了,不需要重新定位元素,而且document.getElementByXpath文档对象目前不支持的东西

因此,请按如下方式修改您的代码:

var btnView = WDS.browser.findElement(pkg.By.xpath("//div/button/span[contains( text(),'View Report')]"))
WDS.browser.executeScript("arguments[0].click();", btnView) 

有关更多 WebDriver 采样器提示和技巧,请参阅 WebDriver 采样器:已回答的前 10 个问题一文。

最新更新