首页 > 解决方案 > 无法在 WebdriverSampler 中使用 groovy Webdriver 脚本

问题描述

我正在尝试使用 groovy 脚本使用 webdriver 采样器启动我的客户端,但它没有按预期工作。只有 JavaScript 正在使用以下代码

var pkg = JavaImporter(org.openqa.selenium); //WebDriver classes
var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait); //WebDriver classes
var wait = new support_ui.WebDriverWait(WDS.browser, 5000);

WDS.sampleResult.sampleStart(); //captures sampler's start time
WDS.sampleResult.getLatency();
WDS.log.info("Sample started");

WDS.browser.get('https://google.com/'); 

标签: selenium-webdriverjmeterperformance-testingjmeter-plugins

解决方案


  1. Groovy 语法与 JavaScript 不同,即没有JavaImporter,你应该使用import关键字来代替
  2. Groovy/Java中没有var关键字(除非您使用的是Java 10),您需要将其更改为def关键字
  3. 假设以上所有内容,您需要将代码修改为:

    import org.openqa.selenium.support.ui.WebDriverWait
    
    def wait = new WebDriverWait(WDS.browser,5000);
    
    WDS.sampleResult.sampleStart(); //captures sampler's start time
    WDS.sampleResult.getLatency();
    WDS.log.info("Sample started");
    
    WDS.browser.get('https://google.com/');
    

    演示:

    在此处输入图像描述

查看Apache Groovy - 为什么以及如何使用它一文,开始使用 JMeter 中的 Groovy 脚本


推荐阅读