JMeter ----与WebDriver安装与测试
JMeter ----与WebDriver安装与测试
主要内容
JMeter安装
WebDriver安装
一个简单的JMeter+WebDriver示例
环境与参考
jvm版本: 1.8.0_65
jmeter版本: 2.13
firefox版本: 39.0.3
参考来源:
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
安装
有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会有冲突,可能会导致以下错误:

我们需要移除:
- httpclient-4.2.6.jar
- httpcore-4.2.5.jar
- httpmime-4.2.6.jar
并保留较高版本

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

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


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

一个简单的示例
为测试计划(Test Plan)新建一个线程组(Thread Group)

添加完成:

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

添加完成:

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

并加入以下脚本:
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')
}添加完成:

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

添加完成

运行测试计划

查看日志

这样就完成一个最简单的JMeter和WebDriver的例子。
本文摘自 :清明-心若淡定 https://www.cnblogs.com/saryli/p/5446525.html
JMeter ----与WebDriver安装与测试的更多相关文章
- JMeter (1) —— JMeter与WebDriver安装与测试(101 Tutorial)
JMeter (1) -- JMeter与WebDriver安装与测试(101 Tutorial) 主要内容 JMeter安装 WebDriver安装 一个简单的JMeter+WebDriver示例 ...
- JMeter (2) —— JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial)
JMeter (2) -- JMeter与WebDriver测试用户登陆以CAS SSO为例(101 Tutorial) 主要内容 JMeter与WebDriver测试用户登陆以CAS SSO为例 环 ...
- JMeter (3) —— JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial)
JMeter (3) -- JMeter录制脚本并压力测试用户登陆场景以CAS SSO为例(101 Tutorial) 主要内容 JMeter录制脚本并进行压力测试用户登陆场景,并以CAS SSO单点 ...
- 【JMeter】插件安装
安装插件的方法有两种,一种是传统的方式,即官网下载,本地配置,重启jmeter.现在有一种快捷的方法可以自定义安装插件-插件管理器 JMeter 插件管理器的使用方法很简单:不要手动安装各种插件,它提 ...
- 使用JMeter进行简单的压力测试
一.压力测试 顾名思义:压力测试,就是 被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况). 比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速 ...
- JMeter使用jar进行压力测试
最近需要对改造的redis缓存接口做压力测试,使用了开源压力测试工具JMeter,分享一下自己的使用经验,希望能对需要进行压力测试的开发同学有所帮助. JMeter介绍 JMeter是Apache软件 ...
- Windows和Linux的Jmeter分布式集群压力测试
Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...
- Selenium (1) —— Selenium安装与测试(101 Tutorial)
Selenium (1) -- Selenium安装与测试(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standalone Selenium ...
- 使用 JMeter 完成常用的压力测试 [转]
讲到测试,人们脑海中首先浮现的就是针对软件正确性的测试,即常说的功能测试.但是软件仅仅只是功能正确是不够的.在实际开发中,还有其它的非功能因素也起着决定性的因素,例如软件的响应速度.影响软件响应速度的 ...
随机推荐
- random os 序列化 模块模块 随机选择
# 1 random 模块 随机选择# import random#随机取小数# ret = random.random() #空是0到1之间的小数字# print(ret)# # 0.0799728 ...
- Day12作业及默写
1.整理今天的博客,写课上代码,整理流程图. 2.用列表推导式做下列小题 li=['alex','wusir','abds','meet','ab'] a. 过滤掉长度小于3的字符串列表,并将剩下的转 ...
- 某关于数位DP的一节课后的感受
题目 求给定区间[x,y]中满足下列条件的整数个数,这个数恰好等于k个互不相等的B的整数次幂之和 Input 15 20 2 2 Out 17 18 20 示例:17=24+20 18=24+21 2 ...
- Android Activity之间的传值示例
AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xm ...
- [工作日志] 2018-11-21 主要: 改bug 自测 :校验图片后缀名
正则表达式 用以下方式去校验图片的后缀 String reg = ".+(.JPEG|.jpeg|.JPG|.jpg)$";String imgp= "Redocn_20 ...
- 【leetcode】345. Reverse Vowels of a String
problem 345. Reverse Vowels of a String class Solution { public: string reverseVowels(string s) { , ...
- 【leetcode】27-RemoveElement
problem RemoveElement class Solution { public: int removeElement(vector<int>& nums, int va ...
- Linux 针对nginx日志文件做ip防刷限制
针对nginx日志做ip访问限制 1.cat /var/log/server/nginx/access.log| awk -F '?' '/optionid/{print $1}'|awk '{pri ...
- 如何运行简单的scrapy
1.建scrapy工程 scrapy startproject python123demo 2.在工程中写一个爬虫文件 cd python123demo scrapy genspider demo p ...
- gogs打造自己的git
推荐docker安装 //下载镜像 docker pull gogs/gogs // 创建容器 docker run -d --name=gogs -p 10022:22 -p 3000:3000 - ...