
学习笔记
Damon_Maa
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Jmeter 实现每秒固定并发数
首先,当然还是创建一个线程组,然后添加一个HTTP请求,这里还是以百度为例:方便演示这里设置10个线程,持续60S,然后使用命令运行,看一下效果:可以看到,Jmeter在31秒就运行完完了600次请求,并且最大响应时间达到了9032ms,可是我这里需要的是60秒完成,这个时候,就需要一个定时器来控制每秒的并发数了。这里使用ConstantThroughputTimer(常数吞吐量定时器),该定时器可以方便地控制给定的取样器发送请求的吞吐量。在HTTP请求上,右键->...原创 2020-09-27 09:43:18 · 15157 阅读 · 3 评论 -
Jmeter生成Html报告
测试报告是测试环节不可缺少的一部分,这里我们看下如何快速生成测试报告。1.使用命令启动jmeter脚本,因为在做性能测试的时候jmeter本身会消耗大量的资源,所以jmeter本身并不推荐使用GUI模式做性能测试,这个在我们启动Jmeter图形模式的时候Jmeter就告诉我们了那么首先看一下启动的参数:参数说明:-h 帮助 -> 打印出有用的信息并退出-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter-t...原创 2020-09-27 09:43:00 · 522 阅读 · 0 评论 -
Jmeter监控服务器数据
在做性能测试的时候需要监控服务器的负载能力,Jmeter有一个叫ServerAgent的插件可以监控服务器的状态信息。1.下载ServerAgent插件,本文使用的是2.2.3版本一共有两个jar包和一个zip包,如下:JMeterPlugins-Extras.jarJMeterPlugins-Standard.jarServerAgent-2.2.3.zip2. 将两个jar包放到jmeter目录下的lib/ext/文件夹中 将ServerAgent-2.2.3.zip...原创 2020-09-27 09:43:31 · 572 阅读 · 0 评论 -
Jmeter实现自定义函数助手
以一个乘法计算器为例,实现一个简单的两数相乘的函数助手。1.在pom文件中添加ApacheJmeter_functions依赖<dependency> <groupId>org.apache.jmeter</groupId><artifactId>ApacheJMeter_functions</artifactId><version>5.0</version></dependen...原创 2020-09-26 10:59:01 · 1511 阅读 · 0 评论 -
Jmeter实现自定义Java请求
在使用日常工作中时候有时候会遇到Jmeter功能无法满足我们的需求,这个时候就可以开发自定义的扩展组件来实现我们的需求。Jmeter扩展组件有两种实现方式: 继承AbstractJavaSamplerClient抽象类 实现JavaSamplerClient接口 实现JavaSamplerClient接口需要实现setupTest、getDefaultParameters、runTest、teardownTest四个方法,而继承AbstractJavaSamplerClient只需要原创 2020-09-26 10:57:51 · 825 阅读 · 0 评论 -
Jmeter 如何实现分布式并发
我们在做压力测试的时候经常会遇到这样的情况,当并发数比较大时会出现Jmeter内存溢出的情况,这时候就需要用到分布式并发了。1.首先在本地机器上的配置文件中修改/bin/目录下的jmeter.properties文件,添加remote_hosts,修改如下:ip地址是远程负载端的ip,端口号和负载端设置一致就可以了。2.在负载端修改jmeter.properties文件,添加server_port,如图:3.启动server端,使用命令:jmeter-server...原创 2020-09-26 10:55:53 · 855 阅读 · 0 评论 -
Jmeter常用断言方法
执行测试的时候断言是必不可少的,因为程序不知道我们想要的是什么结果,所以这里就用到断言。1.响应断言首先添加一个HTTP请求,这里还是以百度为例,如图在HTTP请求下添加一个响应断言显然,在百度的响应结果中是不存在这句话的,我们来运行一下看可以看到访问百度是成功的,但是断言失败了。那么我们来断言一下“百度一下,你就知道”这句话。修改断言的内容执行成功2.JSON断言添加一个HTTP请求,这里还是使用之前我们用的返回JSON数...原创 2020-09-26 10:54:31 · 951 阅读 · 0 评论 -
Jmeter 文件上传和下载
一、文件上传下载本篇我们将整理一下Jmeter文件上传和下载的笔记。我的本地虚拟机现在有这样两个接口:服务器地址:192.168.80.128端口号:8899请求类型:post接口地址:/file/upload参数名称:myfile 文件下载接口 请求类型:get 接口地址:/file/download 文件上传接口 1.文件上传首先添加一个HTTP请求,如图:文件名称:要上传的文件路径名称参数名称:这个是接口中定义的请求参数名称,后面原创 2020-09-26 10:53:40 · 1123 阅读 · 0 评论 -
Jmeter 常用后置处理器使用
我们在做接口测试的时候,难免会遇到一个接口的请求参数是另一个接口的响应结果,这个时候就需要用到后置处理器来处理我们的请求参数,本篇将介绍常用后置处理器的基本使用。一、后置处理器1.正则表达式提取器首先,添加一个HTTP请求,我们以百度为例,如图:请求之后的响应结果是一个HTML文本:我们这里使用正则表达式提取器匹配出<title></title>中的内容。然后,在HTTP请求中添加一个正则表达式提取器,配置如下: 引用名称:就是..原创 2020-09-26 10:52:00 · 4032 阅读 · 0 评论 -
Jmeter 数据库连接方法
前面逻辑控制器的笔记中我们有用到csv文件做为参数文件,今天我们使用数据库来作为参数化数据来源,首先需要准备的数据表如下:--------------------------------Tablestructureforuser------------------------------DROPTABLEIFEXISTS`user`;CREATETABLE`user`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`...原创 2020-09-26 10:50:26 · 2676 阅读 · 0 评论 -
Jmeter 常用逻辑控制器使用
阿里云超低折扣活动再度来袭:新用户购买 >老用户续费>逻辑控制器1.如果(If)控制器在上面CSV参数文件的基础上,添加->逻辑控制器->如果(If)控制器如上图,Jmeter需要对变量使用__jex13或__groovy求值,在这里判断id=3的时候执行如果控制器中的内容。在如果控制器中添加BeanShell,内容如下:当id=3的时候我们打印出id和name值,执行之后结果如下:2.循环控制器将线程组中线程数改为1,添...原创 2020-09-26 10:48:41 · 829 阅读 · 0 评论 -
Jmeter 参数化使用
阿里云超低折扣活动再度来袭:新用户购买 >老用户续费>CSV参数化1.数据准备:新建文本文档,修改文件后缀为CSV,然后使用notepad++编辑,添加如下内容。(使用其他编辑器编辑可能出现无法识别的问题)2.添加CSV数据文件设置3.添加->取样器->BeanShell取样器,在下面可以使用java代码,这里我们将CSV文件中的数据打印出来,如图:4.在线程组中修改线程数为30,运行脚本,即可在jmeter的cmd窗口打印出CSV文件内容,并且在文件原创 2020-09-26 10:46:42 · 173 阅读 · 0 评论 -
Jmeter环境搭建及基本HTTP请求
阿里云超低折扣活动再度来袭:新用户购买 >老用户续费>一、环境搭建及配置 运行环境:Jmeter是基于Java语言的,所以需要准备Java的环境,并添加环境变量。 下载Jmeter:可在Jmeter官网直接下载,如下,Windows用户选择zip文件,Mac或者linux选择tgz文件。 设置中文:Jmeter是支持中文显示的,所以我们在这里设置中文。在bin目录下打开jmeter.properties文件,找到37行取消注释或者添加language=.原创 2020-09-26 10:44:33 · 214 阅读 · 0 评论 -
【MySql学习笔记】自定义函数
创建无参数自定义函数CREATE FUNCTION f1() RETURNS VARCHAR(30) RETURN DATE_FORMAT(NOW(),'%Y年%m月%d日 %H:%i:%s');创建带参数自定义函数CREATE FUNCTION f2(username VARCHAR(20))RETURNS INT UNSIGNEDBEGININSERT test(use...原创 2018-10-23 10:31:16 · 197 阅读 · 0 评论 -
【MySql学习笔记】存储过程
定义:存储过程是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理。优点:1.增强SQL语句的功能和灵活性2.实现较快的执行速度3.减少网络流量存储过程和自定义函数的区别:1.存储过程实现的功能要复杂一些,而函数的针对性更强2.存储过程可以返回多个值,函数只能有一个返回值3.存储过程一般独立来执行,而函数可以作为其他SQL语句的组成部分来出现存储过程...原创 2018-10-23 10:18:21 · 216 阅读 · 0 评论