如何获得多页 JMeter Webdriver 计时

Oph*_*sak 5 selenium jmeter

我使用 JMeter 已经有一段时间了,但是 webdriver 对我来说是新的。我正在尝试为多页场景做一些计时并有一个问题。我正在使用 JMeter webdriver 采样器和 HTMLunit:

以下是场景
1. 转到网页http://162.243.100.234
2. 在搜索框中输入单词 hello
3. 点击提交

我想得到的是:
1. 加载第一页需要
多长时间 2. 从我点击提交到加载结果页面需要多长时间

我有以下代码,它只给我一个样本时间。我要怎么改才能有两个?

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

WDS.sampleResult.sampleStart()
WDS.browser.get('http://162.243.100.234/')

var searchField = WDS.browser.findElement(pkg.By.id('s'))
searchField.click()
searchField.sendKeys(['hello'])

var button = WDS.browser.findElement(pkg.By.id('searchsubmit'))
button.click()
WDS.sampleResult.sampleEnd()
Run Code Online (Sandbox Code Playgroud)

我尝试添加另一个 sampleStart 和 sampleEnd 但得到了错误。我需要以某种方式使用两个采样器吗?

Dmi*_*i T 2

是的,您需要将代码分成两部分:

\n\n

第一个采样器:

\n\n
WDS.sampleResult.sampleStart()\nWDS.browser.get(\'http://162.243.100.234\')\nWDS.sampleResult.sampleEnd()\n
Run Code Online (Sandbox Code Playgroud)\n\n

第二个采样器:

\n\n
var pkg = JavaImporter(org.openqa.selenium)\nWDS.sampleResult.sampleStart()\nvar searchField = WDS.browser.findElement(pkg.By.id(\'s\'))\nsearchField.click()\nsearchField.sendKeys([\'hello\'])\nvar button = WDS.browser.findElement(pkg.By.id(\'searchsubmit\'))\nbutton.click()\nWDS.sampleResult.sampleEnd()\n
Run Code Online (Sandbox Code Playgroud)\n\n

提及WDS.sampleResult.sampleStart()WDS.sampleResult.sampleEnd()方法调用

\n\n

根据《Using Selenium with JMeter\'s WebDriver Sampler》指南

\n\n
\n

WDS.sampleResult.sampleStart() 和 WDS.sampleResult.sampleEnd()\n 捕获 Sampler\xe2\x80\x99s 时间并对其进行跟踪。您可以删除它们,\n 脚本仍然可以工作,但您无法\xe2\x80\x99t 获取加载时间

\n
\n\n

希望这可以帮助

\n