![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jmeter
青少儿编程STEAM
这个作者很懒,什么都没留下…
展开
-
将JDBC Request的查询结果作为另一个接口的请求参数
一、前言 jmeter已配置连接成功数据库,不会的可查看:https://www.cnblogs.com/syw20170419/p/9832402.html二、需求 将JDBC Request的reponse结果中的mobile对应的值“12608523691”作为“编辑行动计划 /todo/create”的请求参数三、具体的操作步骤 1、查看JDBC Request的reponse结果的返回值 2、提取mobile的数据 在JDBC Request.转载 2021-08-06 11:18:18 · 325 阅读 · 0 评论 -
Jmeter入参POST data乱码传入‘--VRES...SER--’的问题
因为勾选了如下:原创 2021-08-05 17:49:32 · 328 阅读 · 0 评论 -
Jmeter如何设置执行csv文件的所有用例
最近在用Jmeter读取csv文件执行用例时遇到个问题:如何能设置执行完所有用例后自动停止?方法一:设置线程组的循环次数与用例数一致,但会有个问题:用例数变更后循环次数也变更,维护比较麻烦方法二(推荐):将线程组的循环次数设置永远,CSV数据文件设置的Recycle on EOF?设置为‘False’...原创 2021-07-28 11:21:59 · 307 阅读 · 0 评论 -
Jmeter读取csv文件的params读取不全的问题
在Jmeter读取csv文件执行用例时,遇到个问题,获取params只获取到参数的第一行(参数换行显示了),如图:Jmeter获取的内容如下:解决办法:将CSV数据文件设置的Allow quoted Data?设置程true即可。...原创 2021-07-28 10:02:57 · 616 阅读 · 0 评论 -
Jmeter(V5.4) if控制器条件不生效问题
在Jmeter V5.4版本使用if控制器,执行时发现设置的条件不生效,如图:问题就在于红色箭头勾选的位置,将其去掉问题解决!原创 2021-07-28 09:44:32 · 929 阅读 · 0 评论 -
Jmeter无法读取csv文件内容原因之一
本来是计划用python做接口自动化测试的,不料在对开发宣讲框架和介绍自动化流程和后期持续集成时领导建议使用jmeter做,便于测试人员快速入门。 为了使原本的用例能直接在jmeter上使用,将excel直接改了文件名后缀为‘csv’;再用jmeter的csv数据文件设置读取,老是读取不到文件内容。问题所在:excel文件名不能直接改成‘csv’格式解决办法:将原来的文件另存为‘csv’格式还遗留一个问题:csv不能有多个sheet页(原来文件是有多个s...原创 2021-07-27 14:13:03 · 1770 阅读 · 0 评论 -
使用JMeter对秒杀示例进行性能测试
背景 秒杀是我们ServiceComb开源团队以领域驱动设计(DDD)为背景,从零开始构建一个微服务架构的示例项目;在《秒杀开发历程》系列博文中提到它作为一个高并发压力场景的应用,采用了CQRS模式构建,因此我们将使用JMeter来对其进行性能评估。制定用户行为模型 因为秒杀的场景在现实生活中非常常见,所以用户行为模型非常容易设计:客户不停的刷秒杀活动,直到刷出一个正在进行的秒杀活动; 刷出了秒杀活动后,马上请求秒杀优惠券; 无论是否成功,客户会稍后查询一次自己已经拥有的优惠券确定优转载 2021-03-14 22:02:14 · 3884 阅读 · 0 评论 -
JMeter接口&性能测试
JMeter接口测试目前最新版本发展到5.0版本,需要Java7以上版本环境,下载解压目录后,进入\apache-jmeter-5.0\bin\,双击ApacheJMeter.jar文件启动JMemter。1、创建测试任务添加线程组,右击测试计划,在快捷菜单单击添加-》线程(用户)-》线程组。设置线程组主要包含三个参数:线程数、Ramp-Up、循环次数。线程数:设置虚拟用户数。一个虚拟用户占用一个进程或线程。线程数就相当于虚拟用户数。Ramp-Up:设置的线程数启动时长,单位为秒。如转载 2021-03-14 20:40:55 · 156 阅读 · 0 评论 -
Jmeter(二十)_Mock接口
首先解释一下什么是mock接口。Mock通常是指,在测试一个对象时,我们构造一些假的对象来模拟与其交互。而这些Mock对象的行为是我们事先设定且符合预期。通过这些Mock对象来测试对象在正常逻辑,异常逻辑或压力情况下工作是否正常。引入Mock最大的优势在于:Mock的行为固定,它确保当你访问该Mock的某个方法时总是能够获得一个没有任何逻辑的直接就返回的预期结果。Mock接口就是用一些合理的手段构造对象去模拟真实接口,达到我们需要的测试效果。测试场景有哪些呢? 依赖的上游项目的接口尚未开发完成转载 2020-08-26 11:25:58 · 1235 阅读 · 0 评论 -
Jmeter(十九)_ForEach控制器实现网页爬虫
一直以来,爬虫似乎都是写代码去实现的,今天像大家介绍一下Jmeter如何实现一个网页爬虫!Jmeter的爬虫原理其实很简单,就是对网页提交一个请求,然后把返回的所有href提取出来,利用ForEach控制器去实现url遍历。这样解释是不是很清晰?下面就来简单介绍一下如何操作。首先我们需要对网页提交一个请求,就拿腾讯新闻网举例子吧!我们像腾讯新闻网发起一个请求,观察一下返回值可以发现中间有很多href标签+文字标题的url我们现在需要把这些url提取出来,利用强大的正则表达式!记得匹配数.转载 2020-08-26 10:26:25 · 250 阅读 · 0 评论 -
Jmeter(十八)_Ubuntu部署jmeter与ant
Docker部署接口自动化持续集成环境第三步,容器化Jmeter与ant!接上文:Docker_容器化jenkins为了整合接口自动化的持续集成工具,我将jmeter与ant都部署在了Jenkins容器中,并配置了build.xml 一:ubuntu部署jdk 1:先下载jdk-8u74-linux-x64.tar.gz,上传到服务器,这里上传文件用到了ubuntu 下的lrzsz。 ubuntu下直接执行sudo apt-get install lrzsz lrz...转载 2020-08-26 10:10:47 · 173 阅读 · 0 评论 -
Jmeter(十七)_jmeter与java_selenium自动化
Jmeter可以通过WebDriver来完成UI自动化测试,也可以测试浏览器端对系统的压力,需要以下jiar包基本配置1:下载JMeterPlugins-WebDriver-1.3.1.zip,解压之后把lib目录下的所有jar文件和lib/ext目录下的JMeterPlugins-WebDriver.jar文件分别拷贝到本地Jmeter安装目录下的lib目录中和lib/ext目录中。下载地址https://jmeter-plugins.org/downloads/old/2..转载 2020-08-26 10:00:03 · 307 阅读 · 0 评论 -
Jmeter(十六)_beanshell实现字符串加密
Jmeter内置的没有MD5加密方法,所以需要写一些java代码实现加密功能,以下是具体操作:1:用eclipse建个工程(包名、类名、方法名自己起)package com.wjika.test;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class mymd5 { public static String getMd5(String plainTex转载 2020-08-25 17:42:49 · 281 阅读 · 0 评论 -
Jmeter(十五)_上传与下载
今天重点说一下Jmeter的上传与下载1:Jmeter上传文件首先确认你的文件名称,参数名称,MIME类型,这些可以从接口文档里面获取,或者直接在页面抓包然后从请求头里面查看。注意,此处我的文件路径是相对路径,对应的是我的bin目录其次,Advanced里面选择java类型,切记运行之后去查看结构树吧,这里不多说了2:jmeter下载文件到本地首先确定你的下载文件接口,确保接口响应正确这里强调一下,jmeter本身是不支持将文件保存到本地的,这里需要写一点java。.转载 2020-08-25 17:35:59 · 120 阅读 · 0 评论 -
JMeter(十四)-自动生成测试报告
很多朋友都在问jmeter如何生成测试报告,这里随便说两句。环境要求1:jmeter3.0版本之后开始支持动态生成测试报表2:jdk版本1.7以上3:需要jmx脚本文件基本操作1:在你的脚本文件路径下,执行cmd命令:jmeter-n -ttest.jmx-lresult.jtl-e -o/tmp/ResultReport参数说明:● -n: 非GUI模式执行JMeter● -t: 执行测试文件所在的位置● -l: 指定生成测试结果的保存文件,jtl文件格式...转载 2020-08-25 16:16:22 · 974 阅读 · 1 评论 -
JMeter(十三)-代理服务器录制脚本
今天重点说一下jmeter如何利用自身的代理服务器录制脚本1:工作台下创建代理服务器2:配置代理,选择录制控制器3:在Requests FIltering下添加排除模式,配置正则表达式。否则会录制出很多凌乱的请求。.*\.XXX.*|.*\.XXX.*,根据需要进行增删4:启动代理服务器5:去页面上执行查询操作,观察代理服务器,可以录制了一个查询的接口,所有必备的参数都自动帮你填好了,是不是很轻松?录制完毕之后,记得把录好的接口移动到线程组下,否则无法运行..转载 2020-08-25 14:58:54 · 198 阅读 · 0 评论 -
Jmeter(十二)_打印时间戳
Jmeter中提供了一种函数,可以打印时间戳,如下图 年: yyyy 月:MM 日:dd 时: HH 分: mm 秒:ss关于时间戳的格式,可以自由组合定义,这里我写成这样yyyy-MM-dd HH:mm:ss生成的函数是这样的:${__time(yyyy-MM-dd HH:mm:ss,)}现在将这个函数写入下一个接口执行,查看结果树,可以看到结果中,将当前时间打印出来了哦~此函数适用于一些需要填写时间参数的接口,用于实时获取当前时间。时间参数如果写死的话,过段时.转载 2020-08-25 14:43:40 · 181 阅读 · 0 评论 -
Jmeter(十一)_针对响应信息不明确的接口做关联
下午写一个新功能的接口脚本,遇到几个技术问题,现在将解决方案写出来1:做接口关联的时候,发现接口响应没有可以利用的信息.如下图只返回了一个成功的标识,这样的接口如何与之关联?通过抓包观察后续的修改功能,发现需要传入一个id和一个title。但是前面的接口没有返回,怎么办?于是我想到了从数据库去读取数据。但是通过jdbc查询数据库也需要传入一个参数呀,这里明明什么都没有。。。没关系,没参数我们可以人为的给它一个!首先我在循环控制器里加入了一个用户变量,用来定义新增时候传入的必填参数..转载 2020-08-25 14:20:14 · 122 阅读 · 0 评论 -
JMeter(十)-正则表达式关联
jmeter中,接口自动化的关键在于参数关联。比如需要登录的接口,如何调用登录口令?一个增删改查的闭环,如何将接口参数上下传递?下面就以实际的例子来仔细说一说1:登录接口这里有一个实际的登录接口,在响应中返回了一串token,如下图那么我们在接下来的接口-经验库列表中,就必须带入这一串token,否则响应报错,如下图所示 如何获取登录的口令呢?这里详细说明一下,如图所示 在接下来的接口中可以将获取的token作为变量调用,变量名为${center-to...转载 2020-08-25 13:47:41 · 162 阅读 · 0 评论 -
Jmeter(九)_获取JDBC响应做接口关联
概述:jmeter中,常常需要连接数据库去断言业务是否正确。因此jdbc数据库关联是必须掌握的核心知识。基础操作JDBC请求,最核心的是两个jar包:mysql驱动-mysql-connector-java-5.1.13-bin.jarsqljdbc4.jar将这两个jar包放到Jmeter目录中的lib文件下,然后重启Jmeter添加线程组 添加 JDBC Connection ConfigurationJDBC Connection Configur..转载 2020-08-25 11:48:45 · 113 阅读 · 0 评论 -
Jmeter(八)-发送JDBC请求
下午花了两个小时研究了一下Jmeter发送JDBC请求,现在把基本操作流程分享一下。 做JDBC请求,首先需要两个jar包:mysql驱动-mysql-connector-java-5.1.13-bin.jar 和 sqlServer驱动-sqljdbc4.jar,将这两个jar包放到Jmeter目录中的lib文件下,然后重启Jmeter。(需要jar包的直接联系本人哦) 1:添加线程组 2:添加 JDBC Connection Configuration 3:配置.转载 2020-08-25 11:43:13 · 139 阅读 · 0 评论 -
Jmeter(七)_if控制器+循环控制器+计数器控制接口分支
最近查阅了一下网上关于if控制器的文章,大同小异,几乎找不到原创,于是决定自己写一篇下午测试接口,遇到了一个审核的流程。逻辑很简单,就是审核不通过之后返回去继续修改再提交,然后再审核,直到通过为止。传统的思路就是先写不通过的接口,然后写修改提交的接口,再写二次审核的接口,对不对?但是我不想这么做,接口只想写一次,让循环控制器和if控制器去判断接口,执行我想要的分支。这里遇到了一个问题,if控制器通过什么去判断接下来的分支?我引入了一个计数器的概念。起始值为0,每次循环加1,将递增的数字传入if控制器转载 2020-08-25 11:36:19 · 511 阅读 · 0 评论 -
Jmeter(五)_函数
JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便。 JMeter函数是一种特殊值,可用于除测试计划外的任何组件。 函数调用的格式如下所示: ${__functionName(var1,var2,var3)} 其中,__functionName为函数名,括号内是函数的参数,无参数时可以不用括号,如${__UUID} Tips: 如果参数包含逗号,那么一定要使用“\”来转义,否则JMeter会把它当作一个参数分隔符 实际使用时,可通过函数助手..转载 2020-08-24 18:03:49 · 244 阅读 · 0 评论 -
Jmeter(三)_配置元件
HTTP Cookie Manager用来存储浏览器产生的用户信息Clear Cookies each Iteration:每次迭代请求,清空cookies,GUI中定义的任何cookie都不会被清除。Implementation:默认HC4CookieHandlerCookie Policy:将用于管理Cookie的cookie策略HTTP Header Manager 信息头管理常用请求头HTTP Cache Manager 缓存管理器(模拟浏览器行为)..转载 2020-08-24 18:02:13 · 170 阅读 · 0 评论 -
Jmeter(二)_基础元件
测试计划(TestPlan)它用来描述一个测试方案,包含与本次性能测试所有相关的功能。也就说本次测试的所有内容是于基于一个计划的。“函数测试模式”复选框,如果被选择,它会使Jmeter记录来自服务器返回的每个取样的数据。线程组Threads(Users)注意:Stepping Thread Group 可用于模拟阶梯加压!threadgroup(线程组)这个就是我们通常添加运行的线程。通俗的讲一个线程组,,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚...转载 2020-08-24 18:00:49 · 89 阅读 · 0 评论 -
Jmeter(一)_环境部署
1:环境部署1:http://jmeter.apache.org/下载最新版本的JMeter,解压文件到任意目录2:安装JDK,配置环境变量JDK环境变量配置3:应当避免jdk路径与jmeter路径有中文和空格,否则会有异常2:目录及面板介绍目录:l目录说明:lbin包含启动、配置等相关命令ldocs官方本地文档目录lextras辅助库llib核心库,包含JMeter用到的各种基础库和插件llicenses包含...转载 2020-08-24 17:59:09 · 135 阅读 · 0 评论