Jmeter 部分组件使用方法

1、添加HTTPS请求

协议是https,端口是443

2、添加HTTP代理服务器

(1)、 右键-》添加-》非测试元件-》HTTP代理服务器-》,设置端口号,默认8888,要保证此端口号未被占用。选择目标控制器以及分组,点击最下面的【启动】,启动代理服务器:

 

在jmeter存放jmx文件的目录下生成了一个ApacheJMeterTemporaryRootCA.crt 的证书。

(2)、然后设置sample的proxy server 值

设置值localhost 端口号8888 。

 

3、逻辑处理器

【1】简单逻辑处理器:最简单的逻辑控制器,相当于一个块儿;

【2】foreach逻辑处理器:根据一个指定的变量来对请求进行循环;

 定义用户变量的规则:

若勾选foreach的add "_" brfore number? 则定义为 变量名_循环索引  ,索引一般从1开始;

若不勾选,则变量名和循环索引中间没有"_"  ;

【3】仅一次处理器:在设置线程组循环多次的情况下,若添加此控制器,那么此控制器下的请求只会执行一次(通常用于登陆模块 )

【4】事务控制器:

     勾选“Generate parent sample”,则事务控制器下所有请求的结果均会展示在父节点上;

勾选”“include duration of timer and ...",

【5】if控制器 : 判断控制的作用

判断返回结果是否满足这个表达式(JavaScript),满足,则执行内部的逻辑:

【6】switch控制器: 选择该控制器下一个子节点采样器执行,

可以选择通过节点id (从0开始);也可以通过采样器名称,为空时是执行第一个元素。

【7】吞吐量控制器

”Total Executions“:设置运行的次数;" percent executions":设置运行比例(1~100)。

【随机控制器】:随机选取一个子节点进行执行

如以下:循环5次,每次随机选择采样器执行

 

【随即顺序控制器】:随机的把所有子节点均执行一次或多次(根据线程组循环次数定);

                                 与random controller 区别在于,random controller 每次循环只执行子节点中的一个随机子节点。

                          应用:页面随机访问,且均要被访问。

【critical section controller】作用:用于核心部分的控制,确保其子节点下的取样器或控制器在一个线程中仅会执行一次

                                          若锁的名字相同,则认为是同个锁,

可以看到,TI请求都没有同时执行,都是隔了几个请求再执行。

【Interleave controller】作用:交替控制器使得该控制器包含的取样器步骤交错执行在每个循环中,每个线程用户仅执行一次控制器内的请求,线程用户依据循环的次数请求控制器中的请求数

可以看到T1、T2是交替执行的。

【模块控制器】:用于跳转到选定控制器位置并执行对应的控制器

      应用:业务逻辑之间跳转

 

===========================================================================================

jmeter 配置元件

1、http信息头管理器

用来配置一些请求的头部信息

 

2、HTTP Request Defaults(请求默认值)

可以设置其作用范围内的所有HTTP的默认值,可被设置的内容包括HTTP请求的host、端口、协议等

可省去重复的设置服务器ip、端口等步骤。

3、HTTP Authorization Manager(授权管理器)

设置http请求的授权Authorization

如果直接再http请求头管理器里面添加Authorization,是一样的效果。

4、JDBC Connection Configuration

不同的数据库类型有不同的JDBC驱动:

Datebase

Driver class

Database URL

MySQL

com.mysql.jdbc.Driver

jdbc:mysql://host:port/{dbname}

PostgreSQL

org.postgresql.Driver

jdbc:postgresql:{dbname}

Oracle

oracle.jdbc.driver.OracleDriver

jdbc:oracle:thin:user/pass@//host:port/service

Ingres (2006)

ingres.jdbc.IngresDriver

jdbc:ingres://host:port/db[;attr=value]

MSSQL(Microsoft SQL Server)

com.microsoft.sqlserver.jdbc.SQLServerDriver

或者

net.sourceforge.jtds.jdbc.Driver

jdbc:sqlserver://IP:1433;databaseName=DBname

或者jdbc:jtds:sqlserver://localhost:1433/"+"lib

 

顺便说下JDBC request:

JDBC Request 参数说明: 
Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable Name Bound Pool名字保持一致 
Query Type:此处支持方式多样,可以用于添加或者筛选数据,根据需要和Query配合使用; 
Query:经测试,填写的sql语句未尾加不加“;”都可以 
Parameter values:参数值,顺序替代Query中的?; 可用多个?
Parameter types:参数类型,可参考:Javadoc for java.sql.Types 
Variable names:保存sql语句返回结果的变量名 ,用于作为参数供调用 

      注:若用a,b,c...等代替每列,那么a_#代表这列的条数;a_1,a_2..分别代表这列第几行的数据。
Result variable name:创建一个对象变量,保存所有返回的结果 ,供调用; 
Query timeout:查询超时时间 
Handle result set:定义如何处理由callable statements语句返回的结果

 

appendix========================================

如果需要jmeter里数据库查询语句里面中文,那么需要在连接数据库的DataBase URL 里指定下字符集,才可以查询出数据。

加上:?useUnicode=true&characterEncoding=utf8

5、TCP取样器配置

结合tcp取样器使用

TCPClient classname 有3种设置:

1、TCPClientImpl:文本数据 ;2、BinaryTCPClientImpl:传输二进制数据,指定包结束符。(常用)

3、LengthPrefixedBinaryTCPClientImpl:数据包中前2个字节为数据长度。可在bin/jmeter.properties配置文件中tcp.binarylength.prefix.length设置。

 

5、keystore configuration 证书配置

preload:是否预加载keystore,最好选true

variable name holding certificate alias:一个代表客户端证书的变量,可以通过CSV data set方式来给参数赋值

alias start index:keystore的开始

alias end index:keystore的结束,要确保这个长度要足够大于指定的keystore长度。

 

6、LDAP Extended Request Defaults /LDAP 请求默认值

首先,LDAP是LightWeight directory access protocol(轻量级目录访问协议),以树状的层次结构来存储数据。

DN :  基准DN,常用公司域名作为基准DN,例:dc=foobar, dc=com

ou: organization unit(相当于公司下面的一些部门)

cn: common name(一个记录项的别名)

AttributeDescriptionRequired
NameDescriptive name for this sampler that is shown in the tree.No
Server Name or IPDomain name or IP address of the LDAP server. JMeter assumes the LDAP server is listening on the default port(389).Yes
Portdefault port(389).Yes
root DNDN for the server to communicateYes
UsernameLDAP server username.Usually
PasswordLDAP server password. (N.B. this is stored unencrypted in the test plan)Usually
Entry DNthe name of the context to create or Modify; may not be empty Example: do you want to add cn=apache,ou=test you have to add in table name=cn, value=apacheYes
Deletethe name of the context to Delete; may not be emptyYes
Search basethe name of the context or object to searchYes
Search filterthe filter expression to use for the search; may not be nullYes
add testthis name, value pair to added in the given context objectYes
modify testthis name, value pair to add or modify in the given context object

 

7、DNS Cache Manger

作用:第一次访问一个网站的时候,DNS服务器要通过别的服务器去查询网站所对应的IP,这个查询的时间会比较长,同时DNS服务器就把该网站和其对应的IP存储在DNS cache里面了。当你第二次访问时DNS服务器就直接从cache里面找对应的IP,这样访问该网站的速度就会快很多。

8、Java 请求默认值/ Java请求

作用:调用Java类,获取返回结果

 

 

9、Variables From CSV File  

从CSV文件中读取变量,和CSV Data Set Config 有些区别,前者的变量名和变量值都是在文件中设置,后者只是变量值在文件中设置。

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值