jmeter 参数化大数据取唯一值方式

一、用时间函数:

因为时间戳永远没有重复,jmeter参数化,而且要取唯一值,可以考虑用时间函数加上其他函数一起:
  1. # 以13位的时间戳作为 userID
  1. nowTime = lambda: int(round(time.time() * 1000))
    userID = str(nowTime())
    print("userID--------" + userID)
  1. 输出结果:
    userID--------1574172135349

每次输出的结果都不一样:

  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import time
  4.  
  5. nowTime = lambda: int(round(time.time() * 1000))
  6. userID = str(nowTime())
  7.  
  8. for i in range(0,10):
  9. print("userID--------" + userID)
  10.  
  11. 输出结果:
  12. userID--------1574172365139
  13. userID--------1574172365139
  14. userID--------1574172365139
  15. userID--------1574172365139
  16. userID--------1574172365139
  17. userID--------1574172365139
  18. userID--------1574172365139
  19. userID--------1574172365139
  20. userID--------1574172365139
  21. userID--------1574172365139

二、用UUID:

解决上面的问题,还可以用UUID来作为参数,UUID通常以36字节的字符串表示,示例如下:
  1. 3F2504E0-4F89-11D3-9A0C-0305E82C3301
ID多数是数字的,如果不需要 “-”,可以去掉。

如下是分析在jmeter中如何使用:

1,新建一个BeanShell Sampler;

  1. BeanShell Sampler编写UUID的代码:
  2. import java.util.UUID;
  3.  
  4. UUID uuid1 = UUID.randomUUID(); //获取UID的值
  5.  
  6. vars.put("transferNo",(uuid1.toString()).toUpperCase().replaceAll("-",""));
  7.  
  8. //去掉UUID的“-”,再赋值给transferNo 运行获取的参数就是:3F2504E04F8911D39A0C0305E82C3301
  9. //vars.put("transferNo",(uuid1.toString()).toUpperCase());
  10. //这个就是不用去掉UUID的“-” 运行获取到的参数就是:3F2504E0-4F89-11D3-9A0C-0305E82C3301

2,新建一个http请求;

在BeanShell Sampler获取到UUID的参数后,可以在http请求页面,直接用:     "transferNo":"${transferNo}"      获取。
运行后,该参数值几乎不出现重复的问题。UUID可以根据自己需要的参数,进行优化。

三,直接写代码for循环生成大量唯一不重复的测试数据

  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  1. for i in range(1000000, 9000000):
    k = i + 1
    q = '2018' + str(k)
    print('q ========= ' + q)
  2.  
  3. 输出结果:
    .........

q ========= 20181145532
q ========= 20181145533
q ========= 20181145534
q ========= 20181145535
q ========= 20181145536
q ========= 20181145537

  1. .........

最后用txt或者excel将生成的大量数据导入jmeter进行并发请求。

jmeter 参数化大数据取唯一值方式的更多相关文章

  1. LoadRunner参数化之数据取值和更新方式

    其实看LR已经很久了,每次看到参数化的取值更新时,都没有看透,了解个大概就为止了,也确实挺搞脑子的. 现在理解下来 分成2部分 取值方式  Select next row 如何从数据列表中取值 Seq ...

  2. jmeter参数化读取数据进行多次运行

    jmeter参数化数据,可以使用csv,还可以使用数据库的方式 1.使用csv读取数据 在线程组中,配置原件中,选择csv data set config 1.本地创建了16个数据,存为test.tx ...

  3. MATLAB 大数据剔除坏值

    在用MATLAB进行数据分析的时候,坏点对正确结果的影响比较大, 因此,我么需要剔除野点,对于坏值的剔除,我们 利用  3σ准则 剔除无效数据: 3σ准则又称为拉依达准则,它是先假设一组检测数据只含有 ...

  4. TestNG参数化测试-数据提供程序 @DataProvider方式

    在 testng.xml 中指定参数可能会有如下的不足: 1.如果你压根不用 testng.xml. 2.你需要传递复杂的参数,或者从Java中创建参数(复杂对象,对象从属性文件或者数据库中读取的et ...

  5. Js数组去重复取唯一值

    function isBigEnough(element) { return element >= 10; } var filtered = [12, 5, 8, 130, 44].filter ...

  6. java大数据批量处理实现方式

    1. 各批量方式对比 Mybatis与JDBC批量插入MySQL数据库性能测试及解决方案 2. 原理解析 1)MySql PreparedStatement executeBatch过慢问题 3. 工 ...

  7. Loadrunner中参数化取值方式分析

    Loadrunner中参数化取值依赖两个维度: 1.取值顺序分为“顺序”“随机”“唯一”.    select next row:Sequential , Random,unique 2.更新值时分为 ...

  8. Spark大数据针对性问题。

    1.海量日志数据,提取出某日访问百度次数最多的那个IP. 解决方案:首先是将这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中.注意到IP是32位的,最多有个2^32个IP.同样可以采 ...

  9. 免费大数据搜索引擎 xunsearch 实践

    以前在IBM做后端开发时,也接触过关于缓存技术,当时给了n多文档来学习,后面由于其他紧急的项目,一直没有着手去仔细研究这个技术,即时后来做Commerce的时候,后台用了n多缓存技术,需要build ...

随机推荐

  1. VLC祥解

    功能部份:   VLC媒體播放器的核心是libvlc ,它提供了界面,應用處理功能,如播放列表管理,音頻和視頻解碼和輸出,線程系統.所有libvlc源文件設在的/src目錄及其子目錄:   # con ...

  2. githe和github连接,上传

    Git入门 如果你完全没有接触过Git,你现在只需要理解通过Git的语法(敲入一些命令)就可以将代码上传到远程的仓库或者下载到本地的仓库(服务器),可知我们此时应该有两个仓库,就是两个放代码的地方,一 ...

  3. c++ 初始化静态static成员变量或static复合成员变量

    https://stackoverflow.com/questions/185844/how-to-initialize-private-static-members-in-c https://sta ...

  4. job和cronjob的使用

    job和cronjob的使用 我们在工作中会遇到需要批量处理数据和分析的需求,也会有按时间来进行调度的工作,在k8s集群中,有job和cronjob两中资源对象来映带我们的这种需要. job负责处理任 ...

  5. 百度编译器ueditor插入视频的时候。在预览的窗口提示 “输入的视频地址有误,请检查后再试!

    ueditor.all.js: 搜索me.commands["insertvideo"] 把html.push(creatInsertStr( vi.url, vi.width | ...

  6. c++实现按行读取文本文件

    包含头文件fstream既可以读又可以写(我的理解是头文件fstream中包含ifstream和ofstream),可以同时创建ifstream对象和ofstream对象,分别实现读写:也可以直接创建 ...

  7. 将照片转成base64时候,使用下面的这个包更加安全一些

    import org.apache.commons.net.util.Base64; 在项目中将照片转成base64时候,使用下面的这个包更加安全一些

  8. Echo团队Alpha冲刺随笔 - 第八天

    项目冲刺情况 进展 程序基本完成,根据实际,添加完善新接口 问题 根据功能对接出现的问题继续进行改进 心得 放假了放松下 今日会议内容 黄少勇 今日进展 测试小程序,添加异常和错误操作的处理 存在问题 ...

  9. PyInstaller库,打包成exe基本介绍

    一.pyinstaller简介 Python是一个脚本语言,被解释器解释执行.它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各 ...

  10. pandas 筛选

    t={ , , np.nan, , np.nan, ], "city": ["BeiJing", "ShangHai", "Gua ...