如何获得多页JMeter Webdriver时序

时间:2014-01-29 22:54:23

标签: 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()

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

1 个答案:

答案 0 :(得分:2)

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

第一个采样器:

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

第二个采样器:

var pkg = JavaImporter(org.openqa.selenium)
WDS.sampleResult.sampleStart()
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()

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

根据使用Selenium和JMeter's WebDriver Sampler指南

  

WDS.sampleResult.sampleStart()和WDS.sampleResult.sampleEnd()   捕获采样器的时间并跟踪它。你可以删除它们   脚本仍然有效但你无法获得加载时间

希望这有帮助