JMeter运行通过Chrome打开的website
部分website在chrome上运行正常,但在IE环境运行会存在问题。而是用 JMeter运行通过chrome打开的website时候,需要处理一下。
可以参考下面几篇文章:
http://ninjawebzen.com/running-jmeter-with-chromedriver/
摘录部分要点信息如下:
Once download finished, extract zip archive somewhere temporary. Then open the folder where your JMeter located, navigate to ..\apache-jmeter-2.13\lib and paste all .jar files from WebDriver plugin ..\lib. Open ..\apache-jmeter-2.13\lib\ext and paste .jar file from WebDriver plugin ..\lib\ext.
Right click on a Test Plan => Add => Threads => Config Element => and make verify is presented Chrome Driver Config.
Now lets set the project:
1. Add Thread Group
2. Then Chrome Driver Config (right click on Thread Group => Add => Config Element => Chrome Driver Config)
You would need to specify location of chromedriver.exe (btw download it, if you haven't yet), then open Chrome Driver Config and switch to Chrome tab and add path, it would be something like:
C:\Users\your_username\apache-jmeter-2.13\lib\chromedriver.exe
3. Add WebDriver Sampler (right click on Thread Group => Add => Sampler => WebDriver Sampler)
And add some test code:
var webdriver = JavaImporter(org.openqa.selenium) var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait) var conditions = org.openqa.selenium.support.ui.ExpectedConditions var wait=new support_ui.WebDriverWait(WDS.browser, 5) var exception = null WDS.sampleResult.sampleStart() WDS.browser.get('localhost:8080') var loginUrl = WDS.browser.findElement(webdriver.By.id('loginUrl_id')) loginUrl.click() var userName = WDS.browser.findElement(webdriver.By.id('username_id')) userName.sendKeys('admin') var password = WDS.browser.findElement(webdriver.By.id('password_id')) password.sendKeys('9') var loginBtn = WDS.browser.findElement(webdriver.By.id('loginBtn_id')) loginBtn.click() var wait=new support_ui.WebDriverWait(WDS.browser, 10) wait.until(conditions.presenceOfElementLocated(webdriver.By.linkText('Some Link Text')))
Run the tests!
You might have an error message like that on first run
2015/08/04 13:41:37 ERROR - jmeter.threads.JMeterThread: Test failed! java.lang.NoClassDefFoundError: Could not initialize class org.apache.http.impl.conn.ManagedHttpClientConnectionFactory
Then problem is duplicate files in your lib folder, so if problem appear open JMeter lib folder and make sure there is no duplicates.
like this:
Here is original stackoverflow solution.
For more information check out Blazemeter posts
1. The WebDriver Sampler: Your Top 10 Questions Answered
2. Using Selenium with JMeter's WebDriver Sampler
另外,下面这两篇文章基本是源自前一篇文章,如果觉得有必要,也可以参考:
https://guide.blazemeter.com/hc/en-us/articles/206732579-Chrome-Extension
http://www.cnblogs.com/liulinghua90/p/5822148.html
就这样处理即可;

赠人玫瑰
手留余香
我们曾如此渴望命运的波澜,到最后才发现:人生最曼妙的风景,竟是内心的淡定与从容……我们曾如此期盼外界的认可,到最后才知道:世界是自己的,与他人毫无关系!-杨绛先生
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?