当尝试使用PhantomJS配置单击按钮时,JMeter Selenium Sampler崩溃



我创建了一个JMeter项目,并使用WebDriver Sampler (Selenium)来捕获与某个网页功能交互时的响应时间。

我已经使用Firefox和Chrome Driver配置测试了这个项目。当我尝试使用PhantomJS时,当我点击一个特定的按钮时,它会冻结。

我检查了HTML代码,发现一个模态位于我需要与之交互的所有web元素的顶部。

我已经对按钮进行了断言,确认它是存在的、可见的和启用的。

有什么办法可以解决这个问题吗?

根据弹出窗口的类型,需要进行不同的处理。例如,JavaScript确认(Yes/No)对话框看起来像:

<html>
<body>
<input type="button" id="somebutton" value="clickme" onclick="return confirm('Hello, JMeter')"/>
</body>
</html>

可以像这样处理:

var By = org.openqa.selenium.By
var ExpectedConditions = org.openqa.selenium.support.ui.ExpectedConditions
var wait=new org.openqa.selenium.support.ui.WebDriverWait(WDS.browser, 10)
WDS.sampleResult.sampleStart()
WDS.browser.get('http://some.url')
WDS.browser.findElement(By.id('somebutton')).click()
WDS.browser.executeScript('window.confirm = function(){return true;}');
WDS.sampleResult.sampleEnd()

查看WebDriver Sampler: Your Top 10 Questions answer一文,了解更多关于Selenium和JMeter集成的技巧和技巧

最新更新