JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

时间:2023-03-09 17:36:14
JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)


主要内容

  • JMeter安装

  • WebDriver安装

  • 一个简单的JMeter+WebDriver示例

环境与参考

jvm版本: 1.8.0_65

jmeter版本: 2.13

firefox版本: 39.0.3

参考来源:

jmeter官方网站

Leverage your Load Testing using JMeter and Selenium WebDriver

jmeter-plugins.org:FirefoxDriverConfig

jmeter-plugins.org:WebDriverTutorial

jmeter-plugins.org:WebDriverSampler

Using Selenium with JMeter's WebDriver Sampler

Homebrew

安装

有brew的童鞋可以很方便的通过命令行安装

$ brew install jmeter --with-plugins

然后运行

$ jmeter

没有brew的童鞋可以自行下载然后通过java运行,关于插件也需要自行手动下载安装:

  • Unzip jmeter bundle
  • Unzip jmeter-plugins bundles
  • Copy JMeterPlugins-WebDriver-1.3.1/lib/ext/JMeterPlugins-WebDriver.jar into jmeter/lib/ext
  • Copy JMeterPlugins-Standard-1.3.1/lib/ext/JMeterPlugins-Standard.jar into jmeter/lib/ext
  • Copy JMeterPlugins-WebDriver-1.3.1/lib/*.jar into jmeter/lib/

*注意:Webdriver依赖的jar和JMeter依赖的jar会有冲突,可能会导致以下错误:

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

  • 我们需要移除:

    • httpclient-4.2.6.jar
    • httpcore-4.2.5.jar
    • httpmime-4.2.6.jar

并保留较高版本

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

测试

准备

在测试之前我们需要先查看firefox的版本,由于当前使用的最新版jmeter 2.13对firefox40+支持的还不是特别好,可能会出现错误,所以我将本地的firefox重新安装了一个实例,版本为39.0.3。firefox 40+下对Selenium IDE 2.9.1 Addon支持的也不是很好,在录制脚本的时候会漏掉某些动作,在此不赘述,会在Selenium自动化测试中详细介绍。

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

究其原因,主要是因为我们查看jmeter2.13的release note其依赖的WebDriver plugin 1.3.1依赖的是selenium-firefox-driver-2.47.0.jar,而这个版本对firefox的支持可以在其github的release note上找到

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

如果本地firefox是40+的版本,我这里使用的是43,可能会出现错误

JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

一个简单的示例

  1. 为测试计划(Test Plan)新建一个线程组(Thread Group)

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    添加完成:

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

  2. 为线程组添加一个Firefox Driver配置

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    添加完成:

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

  3. 为线程组添加一个WebDriver Sampler配置

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    并加入以下脚本:

     WDS.sampleResult.sampleStart()
    try { WDS.browser.get('http://baidu.com')
    WDS.sampleResult.sampleEnd()
    } catch(ex) {
    WDS.sampleResult.sampleEnd()
    WDS.sampleResult.setSuccessful(false)
    WDS.sampleResult.setResponseMessage('Expected title to be Baidu')
    }

    添加完成:

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

  4. 为线程组添加一个结果配置(View Results in Table)

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    添加完成

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

  5. 运行测试计划

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

    查看日志

    JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)

这样就完成一个最简单的JMeter和WebDriver的例子。

结束