我创建了一个JMeter项目并使用WebDriver Sampler(Selenium)来捕获与某个网页功能交互时的响应时间。
我使用Firefox和Chrome驱动程序配置测试了该项目。当我尝试使用PhantomJS时,当我点击特定按钮时会冻结。
我检查了HTML代码,发现模态位于我需要与之交互的所有网络元素之上。
我已经对按钮断言,确认它已存在,可见并已启用。
有关如何解决此问题的任何想法?
答案 0 :(得分:0)
根据弹出窗口的类型,需要以不同方式处理。例如,JavaScript Confirm(是/否)对话框,如下所示:
<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()
查看The WebDriver Sampler: Your Top 10 Questions Answered文章,了解有关Selenium和JMeter集成的更多提示和技巧