使用谷歌浏览器网络驱动程序在 Jmeter 中填充下拉框

populate dropdown box in Jmeter using google chrome web driver

提问人:Tau7 提问时间:7/29/2015 更新时间:2/24/2017 访问量:2466

问:

我正在努力填充一个下拉列表,我可以让它选择它,但不确定该如何选择值:

var TitleField = WDS.browser.findElement(pkg.By.id('Title'))
TitleField.click()
TitleField.sendKeys(['Mr'])

我看过一些文章,它说你必须导入一个驱动程序:

var driver  = JavaImporter(org.openqa.selenium.support.ui.Select)

Select selectObject = new Select(driver.findElement(By.id(Title)));
selectObject.selectByValue('Mr');

但这会阻止整个测试的运行。

有人可以澄清我需要做什么才能使用 javascript 选择下拉值吗?

谢谢

JavaScript Selenium JMETER chrome-web-driver

评论

0赞 Madhan 7/30/2015
你能解释一下这个问题吗?如果可能,请提供指向 url 的链接或发布 html 元素

答:

1赞 Dmitri T 7/30/2015 #1

根据 Select JavaDoc,它应该实例化为:

Select(WebElement element)

所以你正在寻找正确的方向,但实施有点不正确。正确的应该是:

var element = WDS.browser.findElement(org.openqa.selenium.By.id('Title'))
var select = new org.openqa.selenium.support.ui.Select(element)
select.selectByVisibleText('Mr')

我不能保证它会在您的环境中工作,以防万一在下面的 W3Schools 上找到针对 Select try-it-yourself 的完整端到端演示:

WDS.browser.get('http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select')
WDS.browser.switchTo().frame('iframeResult')
var element = WDS.browser.findElement(org.openqa.selenium.By.xpath('//select'))
var select = new org.openqa.selenium.support.ui.Select(element)
select.selectByVisibleText('Opel')

请参阅 WebDriver 采样器:回答的前 10 个问题,了解更多 WebDriver 采样器提示和技巧。