jmeter组件:线程组

是什么?

  进程:一个正在执行的程序对应一个进程

  线程:进程中的执行线索(一个进程中有多个执行线索)

  线程组:按照线程性质对线程进行分组

  并发执行:多个线程同时进行    特点:执行结束的顺序和启动顺序不一定一致

  顺序执行:按照线程的启动顺序挨个执行

为什么?

  方便管理

怎么用?

  *  进程有多个线程组 线程组可以有多个线程

  进程 ----- 测试计划

  线程组 ----- 线程组

  线程 ----- 线程组属性的线程数

  *  默认情况下,线程组中的线程是并发执行的

     每一个线程都要执行组内的http请求

  *  怎么设置线程组顺序执行

    勾选测试计划的第一个复选框(独立运行每个线程组)

线程组 http请求:

  取样器-http请求(配置url 、提交数据)

  配置元件--信息头管理器(设置JSON对应的信息头 Content-type  application/json;charset=utf-8)

  查看结果数

线程组 优化:

  在测试计划下添加  配置元件--HTTP请求默认值:封装被复用的配置项信息,简化实现,提高效率

线程组 高级部分:

  线程数配置:3    模拟用户数

  时间值:10   在设置时间内启动所有线程组

  循环次数:2  单个用户访问的次数

  调度器:勾选

    1)循环次数为 永远

    2)设置启动延迟 x 和持续时间 y

      在x秒后访问服务器,并且持续y秒

    3)设置启动时间 M 和 结束时间 Y

      在M时开始,在N时结束

    注意:2和3不能同时使用,否则矛盾

jmeter组件:参数化

是什么?

  动态获取并设置数据

为什么?

  比如执行批量操作时,批量插入或批量删除,之前数据都是手写的,每次执行完一次都要修改一次,效率太低

  参数化可以以程序代替人工获取并设置数据:安全+高效

参数化实现之CSV Data SetConfig(重点中的重点)

是什么?

  jmeter组件之一

为什么?

  通过这个组件可以动态获取并设置数据,实现类似批量添加操作(执行一次,将多条数据插入到数据库)

怎么用?

  实现思想:

    

    总结:

      1、编写添加框架,设置循环次数为3,JSON数据格式固定,值先不写

      2、编写一个外部的文本文档,存储要添加的三条数据

      3、Jmeter添加一个参数化组件CSV Data Set Config ,每次循环时都读取外部文档的一行数据,再将4个字段分别设置进提交的JSON数据中

  实现流程:

    1、循环次数:3

    2、body值不写“ ”

    3、创建一个文本文档,三条记录

    4、配置元件 -- CSV Data SetConfig, filename--相对/绝对路径  ,encoding--utf-8(与文档一致) , Deliter--字段分隔符(与文档一致), variable--值进行对应,输入变量名,在body中引用  ${变量名}

  其他:

    CSV Data SetConfig ---  CSV数据配置

    CSV ---  逗号分隔值文件格式

线程组:特殊线程组

  setup线程组:始终是最先执行的  -----   可用于资源加载操作(初始化)

  teardown线程组:始终是最后执行的  -----  程序正式关闭之前,可以将数据保存进内存

jmeter学习笔记--线程组的更多相关文章

  1. Jmeter学习笔记TWO

    使用非GUI模式运行Jmeter脚本并自动生成测试报告 命令:jmeter -n -t tougu.jmx -l result.jtl -e -o /tmp/ResultReport 这个命令是用于执 ...

  2. java学习笔记04--数组

    java学习笔记04--数组 数组复制的方法是使用System类提供的arraycopy()方法,其语法如下: System.arraycopy(Object src, int srcPos, Obj ...

  3. Jmeter(五十二) - 从入门到精通高级篇 - jmeter之跨线程组传递参数(详解教程)

    1.简介 之前分享的所有文章都是只有一个线程组,而且参数的传递也只在一个线程组中,那么如果需要在两个线程组中传递参数,我们怎么做呢?宏哥今天就给小伙伴或者童鞋们讲解一下,如何实现在线程组之间传递参数. ...

  4. JMeter学习笔记--录制脚本(二)

    第一步:在JMeter中添加线程组,命名为访问首页 第二步:在线程组下添加HTTP请求默认值 添加->配置元件->HTTP请求默认值,设置服务器IP和端口号(JMeter默认使用80端口号 ...

  5. JMeter 学习笔记从不懂慢慢提升(01)

    开源已经成为一个趋势,虽然说做测试是一个低端的行业,但是我们也应该在这个低端的行业慢慢提升自己,让自己到达理想的高度. 以前说如果你会使用loadrunner可能别人就会觉得你有一定的水平那么就会拿高 ...

  6. JavaSE中线程与并行API框架学习笔记——线程为什么会不安全?

    前言:休整一个多月之后,终于开始投简历了.这段时间休息了一阵子,又病了几天,真正用来复习准备的时间其实并不多.说实话,心里不是非常有底气. 这可能是学生时代遗留的思维惯性--总想着做好万全准备才去做事 ...

  7. Java学习笔记 线程池使用及详解

    有点笨,参考了好几篇大佬们写的文章才整理出来的笔记.... 字面意思上解释,线程池就是装有线程的池,我们可以把要执行的多线程交给线程池来处理,和连接池的概念一样,通过维护一定数量的线程池来达到多个线程 ...

  8. jmeter解决不同线程组之间传递参数问题

    首先在第一个线程组里讲你需要保存的值放入到jmeter的某个属性中,属性名名字自己定义,如上图的token , props.put("token", token),第二个参数必须是 ...

  9. Jmeter学习笔记ONE

    最近想学一些关于性能测试方面的知识,其实之前已经初步了解了Jmeter工具,它是一个轻量级的性能测试工具,开源并且免费,相比于Loadrunner来说用起来更简便. JMeter 可以用于对服务器.网 ...

随机推荐

  1. 图像三维灰度分布图——matlab

    p=imread('C:\Users\wangd\Documents\MATLAB\1.jpg'); g=rgb2gray(p); % 转为灰阶图 gg=double(g); % 转为数值矩阵 gg= ...

  2. RDMS三剑客的服务

    @echo off title %1 goto %1 echo Error... echo. goto bexit :orcl_stop rem 顺序:EM.LSN.SID rem echo stop ...

  3. JavaScript BOM和DOM

    Browser Object Model BOM是所有JavaScript的核心,所有的功能其实都建立在BOM基础之上.各浏览器提供的BOM的功能存在很大差异,BOM在HTML5中已经有很大一部分被放 ...

  4. ObjectARX2012+ObjectARX Wizards2012+AutoCAD2012+MVS2008 环境配置

    1  版本选择 ObjectARX本身采用的MVS编译平台,因此选择ObjectARX的编译平台作为二次开发的平台,兼容性最好,当然别的平台也不是一定不可以.目前已知的对应关系如下: R15   -- ...

  5. 《剑指offer(第二版)》面试题60——n个骰子的点数

    一.题目描述 把n个骰子仍在地上,所有的骰子朝上的一面的点数之和为s,输入n,打印出s所有可能的值出现的概率. 二.题解 <剑指offer>上给出的两种方法,尤其是代码,晦涩难懂且没有注释 ...

  6. python列表的基础操作

    Operation Result Trans x in s True if an item of s is equal to x, else False x值是否在s列表中 x not in s Fa ...

  7. Javascrip错误类型

    Javascrip一旦发现错误,会自动创建一个Error类型对象. Javascrip中有几种错误类型?六种1.SyntaxError 语法错误2.ReferenceError 引用错误3.TypeE ...

  8. java程序中的乱码方案

    1. 万能方式,既能够解决POST请求乱码,又能够解决GET请求乱码 操作方法:先将服务器中接收到的数据采用ISO-8859-1的方式解码,回归原始状态, 再给定一种支持简体中文的编码方式重新编码组装 ...

  9. C# 控件之数据绑定

    增加一个委托方法,可以实现后台多线程直接更新UI界面的值,利用了控件的DataBindings,以及 INotifyPropertyChanged接口和事件委托机制. 如果只是通过INotifyPro ...

  10. java+Selenium+TestNg搭建自动化测试架构(3)实现POM(page+Object+modal)

    1.Page Object是Selenium自动化测试项目开发实践的最佳设计模式之一,通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化,只需要调整页面元素封装的代码,提高测试用例 ...