使用https连接时,如果对应站点的CA 证书错误,会直接报连接不到服务器的错误,org.apache.commons.httpclient.NoHttpResponseException,把错误证书删除后【证书发行商,证书有效时间,证书对应的站点3部分信息】,或者使用正确的证书,就可以!

工具栏按钮: 
Find, Clear All, Start, Function Helper, Help(鼠标点到某个项目,然后点击该按钮弹出相应帮组)

JMeter录制代理设置(注意这个代理是用来录制脚本的): 
WorkBench->right click->Add->Non-Test Elements->Http Proxy Server->Start

Firefox代理设置: 
Tools->Options->Advanced->Network->Connection Settings->Manual proxy configuration 
HTTP Proxy:127.0.0.1 Port:8080 Use this proxy server for all protocols 
注意:No proxy for: localhost, 127.0.0.1

HTTP Proxy Server设置

JMeter执行代理设置(通过代理服务器来执行JMeter,当把代理设置成127.0.0.1 8888,默认就可以和Fiddler集成,即Fiddler会抓到JMeter发出的请求):

    -H [proxy server or IP address]
-P [proxy server port]
-u [username for the proxy authentication]
-a [password for the proxy authentication]
jmeter.bat -H 192.168.10.1 -P 8012
jmeter.bat -H 192.168.10.1 -P 8012 -u my_user_name -a my_password

  

HTTP Request HTTPClient 选项: 
基础选项: 
Add: 
对于POST请求,Content-Type:application/x-www-form-urlencoded;charset=UTF-8;charset=UTF-8, 
对于GET请求,Content-Type:charset=UTF-8;charset=UTF-8, 
然后选中header?单选框,jmeter就以HTTP Header的形式告诉服务器请求参数编码使用的字符集,而其他没有选上header?单选框的项目以Parameter的形式发送!注意HTTP GET请求,发送的中文字必须选中Encoder?单选框,而作为POST方式发送时,不需要选中,只需要指定编码! 
高级选项: 
Encoding编码, 
Timeout(ms), 
Redirect Automatically(自动重定向-服务器内部进行重定向操作时,HTTP Request自动重定向,然后返回Redict后的Response, 如果选择否的话,服务器就不会进行自动重定向操作,这时,默认只显示第一个重定向前的请求,此时,如果把Follow Redirects选择为true时,那边在结果页面View Result Tree中会把所有的请求都列出来)
一般情况下:Redirect Automatically true, Follow Redirects false 否则Redirect Automatically false, Follow Redirects true 
有时候在服务器存在多次Redirect或者对POST请求做了Redirect转发的时候,JMeter会处理不正常,这时候可以 
1,使用HTTP Request而不是HTTP Request HTTP Client 或者 
2,使用GET请求来替换POST请求 或者 
3,把Redirect Automatically和Follow Redirects都设置成false,然后用正则表达式Location: (.*)从响应头中提取Redirect的URL,然后根据提取的URL建立新的HTTP请求   ----  直接从Location中得到的url拼到Path中能正常执行 
Use multipart/form-data for POST 
Ignore response code

JMeter保存执行结果: 
在View Results Tree界面以树状结构保存结果,在该画面上点击Configure的弹出画面中,选择Save Field Names, Save Assertion Failure Message,点击Done【注意:Write results to file不要选中自己的脚本文件,不然就会丢失脚本!! 默认显示所有结果:错误的和正确的】

JMeter日志:执行脚本时,Jmeter错误日志会输出到控制台中!

JMeter使用系统时间作为唯一值: 
Add->Pre Precessors->User Parameters->currentTime=${__time(YMD)}${__time(HMS)}, Update Once Per Iteration checked 
使用的地方:${__threadNum()}_${currentTime}, 也可以不定义变量直接使用

JDBC数据库连接: 
Add --> Logic Controller --> Case 
Add --> Config Element --> JDBC Connection Configuration 
    Database URL:jdbc:oracle:thin:@192.168.0.1:1521:dbinst 
    JDBC Driver class:oracle.jdbc.driver.OracleDriver 
    Variable Name Bound to Pool(数据库连接池设置,和下面的JDBC Request中的相应项目的值一致!):prjdata
    这里好像必须写死,不能引用properties中的变量 
Add --> Sampler --> JDBC Request 
    sql中不能用分好结尾 
    输入的sql中可以直接使用变量,如select * from tbl where s ='${currentTime}'

把数据库中查询的值,设置到变量中来使用: 
JDBC Request的responseFormat选择xml,然后新建Add->Post Processors->XPath Extractor->在弹出来的界面中,Reference Name为将要被使用的变量名词,XPath query设置为:/RecordSet/Record/ITEMNAME 
/RecordSet/Record[2]/ITEMNAME:选取第二行记录中的相应项目的值 
Reference Name:    refName - set to first (or only) match; if no match, then set to default;    refName_matchNr - set to number of matches (may be 0);    refName_n - n=1,2,3 etc. Set to the 1st, 2nd 3rd match etc. 
Use Tidy:从HTML中提取时,选择Yes,从XHTML或者XML提取时,选择false

使用__StringFromFile函数读取错误,**ERR**,原因是改函数读取的文件是相对与JMeter launch directory目录的,即要把数据文件放到bin目录下! 或者绝对路径

各元素执行顺序:

  • Configuration elements
  • Pre-Processors
  • Timers
  • Sampler
  • Post-Processors (unless SampleResult is null)
  • Assertions (unless SampleResult is null)
  • Listeners (unless SampleResult is null)

JMeter调试: 
添加Debug Sampler或者Debug PostProcessor 后,在执行结果View Results Tree中可以在相应的Response标签中看到JMeter Properties,JMeter Variables,System Properties,Sampler Properties(Debug PostProcessor) 的值! 
Debug PostProcessor:给Sample建立一个子Sample以监听Sampler Properties以及其他的值!

JMeter Cookie值的抓取: 
参考页面:JMeter正则表达式提取器

JMeter 脚本录制: 
1,它提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,不太好用 
2,使用Badboy录制并导出 JMeter 脚本 
参考:《JMeter从入门到精通》之一——开始你的第一个JMeter脚本

Response Assertion: 
匹配规则 Contains, Matches: Perl5-style 正则表达式; Equals, Substring: 大小写敏感的文本匹配 
(?i) - 大小写不区分; (?s) - 多行模式, i.e. "." matches new-line; (?is) - 上面2种模式

jmeter结果保持、JTL文件读取: 
JMeterPluginsCMD Command Line Tool 
Jmeter: how to create summary report from JTL file?

JMeter 监控和记录&常用功能的更多相关文章

  1. Jmeter常用功能详解

    嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅

  2. 转 2 jmeter常用功能介绍-测试计划、线程组

    2 jmeter常用功能介绍-测试计划.线程组   1.测试计划测试用来描述一个性能测试,所有内容都是基于这个测试计划的. (1)User Defined Variables:设置用户全局变量.一般添 ...

  3. 转 My97日历控件常用功能记录

    My97相信大家都不陌生,应该是我所见过的最强大的一个日历控件了,最近的项目中也比较多地用到了此控件,而且项目中经常会有不同时间范围的需求,在此列出一些比较常用的日期范围格式的设置,尽管在My97的官 ...

  4. 前端常用功能记录(二)—datatables表格(转)

    前端常用功能记录(二)—datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是 ...

  5. CentOS rpm常用功能记录

    CentOS7主要有rpm和yum这两种包软件的管理.两者有功能上的区别,其中主要区别是:yum使用简单但需要联网,yum会去网上包源去获取所需要的软件包.而rpm的需要做的事情就更细一些,比如我们需 ...

  6. WebStorm 常用功能的使用技巧分享

    WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的使用技巧,希望能帮助大家更好的使用这款强大 ...

  7. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

  8. Navicat Premium 常用功能讲解

    https://www.linuxidc.com/Linux/2016-04/130159.htm Navicat Premium 常用功能讲解 1.快捷键 1.1. F8 快速回到当前对象列表 1. ...

  9. WebStorm 常用功能

    WebStorm 常用功能的使用技巧分享 WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的 ...

随机推荐

  1. MQL语句大全

    mysql sql语句大全 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql se ...

  2. 初学JVM

    最近在读周志明的<深入理解Java虚拟机:JVM高级特性与最佳实践>,从中学到了很多,有些人可能会问为什么我们要学习JVM,他有什么用?在这里我想说一下,并不是这本书是大家都推荐的说有用处 ...

  3. 使用r.js来打包模块化的javascript文件

    前面的话 r.js(下载)是requireJS的优化(Optimizer)工具,可以实现前端文件的压缩与合并,在requireJS异步按需加载的基础上进一步提供前端优化,减小前端文件大小.减少对服务器 ...

  4. Backbox Linux简介与配置内网IP

    总体说起来,Backbox内置的工具什么的,并不是很多,但是它集成了一些用起来很棒的工具. 比如:Beef.Sqlmap.wpscan.zenmap.msf.w3af.dns嗅探等一系列工具,传说中的 ...

  5. AngularJS高级程序设计读书笔记 -- 控制器篇

    作用域组成了一个能够用于在控制器之间形成通信的体系结构. 1. 控制器和作用域的基本原理 控制器就像领域模型与视图之间的纽带, 他给视图提供数据与服务, 并且定义了所需的业务逻辑, 从而将用户行为转换 ...

  6. 关于EasyUI中的Tree

    2017年6月21日,天气阴.心情比较沉重. 近期由于毕设的事情,三周不写代码了.这周测试提交了一些BUG,于是开始着手处理,还真的是熟能生巧,三周的功夫就感觉有点生疏.其中有一个BUG就是角色对应的 ...

  7. printf和scanf整理(后续填补)

    scanf和printf头文件:<stdio.h> 1.%d.%3d.%03d.%-3d区分 %d:以十进制形式输出整数(int) %3d:指定宽度为3,不足的左边补空格 %03d:一种左 ...

  8. 伞兵(Paratroopers)

    伞兵(Paratroopers) 时间限制: 1 Sec  内存限制: 128 MB 题目描述 公元 2500 年,地球和火星之间爆发了一场战争.最近,地球军队指挥官获悉火星入侵者将派一些伞兵来摧毁地 ...

  9. 阿里云OSS存储

    1.accessKeyId 与 accessKeySecret 是由系统分配给用户的,称为ID对,用于标识用户,为访问OSS做签名验证. 2.Bucket是OSS上的命名空间,相当于数据的容器,可以存 ...

  10. Mac机上安装nvm遇到的坑--nvm command not found

    在Mac机上,我最开始是通过homebrew来安装nvm,如下: $ brew install nvm 安装完成后,在命令行输入nvm list,发现出现如下提示: What?!!我不是才安装了nvm ...