JMeter运行通过Chrome打开的website

本文介绍如何使用JMeter结合ChromeDriver进行网站测试。主要内容包括配置JMeter环境以支持Chrome浏览器,具体步骤涉及安装WebDriver插件,设置ChromeDriver路径及编写测试脚本等。文章还提供了常见错误解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

部分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 

 

就这样处理即可;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值