无法使用Jmeter-Webdriver访问方法

时间:2014-06-26 08:19:16

标签: java javascript selenium selenium-webdriver jmeter

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)
**var support_page=JavaImporter(org.openqa.selenium.WebDriver.Timeouts)**
**var support_p=new support_page.pageLoadTimeout(30, TimeUnit.SECONDS)**
var url = WDS.args[0];
var user = WDS.args[1];
var pwd = WDS.args[2];

WDS.sampleResult.sampleStart()
WDS.browser.get(url)
var wait=new support_ui.WebDriverWait(WDS.browser,15000)
var userName = WDS.browser.findElement(pkg.By.id('Login_txtUserName')).sendKeys([user])
//userName.click()
//userName.sendKeys(['pandian'])
var userPwd = WDS.browser.findElement(pkg.By.id('Login_txtPassword')).sendKeys([pwd])
//userPwd.click()
//userPwd.sendKeys(['1234'])
var button = WDS.browser.findElement(pkg.By.id('Login_btnLogin')).click()
//button.click()

当我尝试导入WebDriver.Timeouts类时,它已导入,但我无法访问方法pageLoadTimeout,当我运行jmeter时,它说

  

响应消息:javax.script.ScriptException:sun.org.mozilla.javascript.internal.EcmaError:ReferenceError:未定义“TimeUnit”。 (#5)在第5行

您能否为我提供JMETER访问pageLoadTimeout()的代码?

1 个答案:

答案 0 :(得分:1)

有一种更简单,更好的方法来完成工作。请尝试以下代码:

var timeunit = java.util.concurrent.TimeUnit

WDS.sampleResult.sampleStart()
WDS.browser.manage().timeouts().pageLoadTimeout(1, timeunit.SECONDS);
WDS.browser.get('http://google.com')
WDS.sampleResult.sampleEnd()

有关使用WebDriver Sample插件在Apache JMeter中创建Selenium脚本的更多详细信息,请参阅Using Selenium with JMeter's WebDriver Sampler指南。