有一个需求,新建一批账号,把获取的账号相关信息存入文本文件,当文本文件保存的数据达到一定的数量,就自动停止新建账号。

分析下需求:

1、把账号信息保存到文件,需要使用bean shell脚本(bean shell脚本语法和java一样,功能也一样),并且需往脚本中传入要保存的信息

2、文件中保存的数据达到一定的数量,就自动停止新建账号。数量也是要用bean shell脚本读文件获取文件行数,并传出。自动停止新建脚本,这就需要加个jmeter的if控制器,在if控制器的条件中判断数量是否达到。

脚本实现过程:

1、位了模拟得到账号信息,先设置一个User Defined Variables,通过add > config element > User Defined Variables 添加

在User Defined Variables 中添加一个变量account_info,值随意给就可以,如“111111111111”,这样往文件中保存“111111111111”模拟为账号信息

2、新建一个bean shell 脚本,读取获取文件行数

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader; int count = 0;
try{
File file = new File("E:\\test.txt");
// 如果文件不存在就新建
if (!file.exists())
{
file.createNewFile();
}
// 读文件
BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(new FileInputStream(file.getAbsolutePath()), "UTF-8"));
// 循环获取文件行数
while ((str=bufferedReader.readLine())!=null)
{
count = count + 1;
}
bufferedReader.close(); }catch(IOException e)
{
e.printStackTrace();
}
//文件行数java变量传给jmeter变量total_lines
vars.put("total_lines",String.valueOf(count));

3、新建一个if 控制器

if 控制器里面的条件填写:

${__jexl3(${total_lines}<11,aa)},其中total_lines 是bean_shell脚本返回的。使用${__jexl3(${total_lines}<11,aa)} 对${total_lines}<11进行判断并返回true 或false

4、再在if控制器中新建一个 写文件bean shell

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
// 传入jmeter 变量 account ,使用java变量 message接收
String message= vars.get("account_info");
try{
File file = new File("E:\\test.txt");
// 如果文件不存在,就新建一个文件
if (!file.exists())
{
file.createNewFile();
}
// 文件末尾追加写入文件
FileOutputStream fos = new FileOutputStream(file.getAbsoluteFile(),true);
fos.write(message.getBytes());
fos.write("\n".getBytes());
fos.close();
}catch(IOException e)
{
e.printStackTrace();
}

整个jmeter 脚本结构形式

使用jmeter往指定文件中插入一定数量的数据(转)的更多相关文章

  1. 使用jmeter往指定文件中插入一定数量的数据

    有一个需求,新建一批账号,把获取的账号相关信息存入文本文件,当文本文件保存的数据达到一定的数量,就自动停止新建账号. 分析下需求: 1.把账号信息保存到文件,需要使用bean shell脚本(bean ...

  2. 如何用Apache POI操作Excel文件-----如何在已有的Excel文件中插入一行新的数据?

    在POI的第一节入门中,我们提供了两个简单的例子,一个是如何用Apache POI新建一个工作薄,另外一个例子是,如果用Apache POI新建一个工作表.那么在这个章节里面,我将会给大家演示一下,如 ...

  3. 使用Apache POI操作Excel文件---在已有的Excel文件中插入一行新的数据

    package org.test; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundEx ...

  4. 自定义VBS脚本(统计在指定文件中搜索字符串出现的次数)

    '=========================================================================='' VBScript Source File - ...

  5. 通过wget工具下载指定文件中的URLs对应的资源并保存到指定的本地目录中去并进行文件完整性与可靠性校验

    创建URLs文件在终端输入cd target_directory回车,便把当前文件夹切换到了目标文件夹target_directory,此后创建的文件都会丢它里面在终端输入cat > URLs回 ...

  6. java:从指定问价中读取80个字节写入指定文件中

    import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; public class F ...

  7. Java查找指定文件中指定字符的个数

    package lwl.youweb2.test; import java.io.BufferedReader; import java.io.FileReader; import java.io.I ...

  8. flink---实时项目--day01--1. openrestry的安装 2. 使用nginx+lua将日志数据写入指定文件中 3. 使用flume将本地磁盘中的日志数据采集到的kafka中去

    1. openrestry的安装 OpenResty = Nginx + Lua,是⼀一个增强的Nginx,可以编写lua脚本实现⾮非常灵活的逻辑 (1)安装开发库依赖 yum install -y ...

  9. 从文件中读取yuv和h264数据

    1.从文件中读取h264数据 参考ffmpeg avc.c写的从文件中一帧帧读取h.264数据的demo #include <stdio.h> #include <stdlib.h& ...

随机推荐

  1. bzoj 3091: 城市旅行 LCT

    题目: http://www.lydsy.com/JudgeOnline/problem.php?id=3091 题解: 首先前三个操作就是裸的LCT模板 只考虑第四个操作. 要求我们计算期望,所以我 ...

  2. 【Google】循环字符串里面的独立子串

    转载自九章算法(地址) 题目: 假设s是一个无限循环的字符串”abcdefghijklmnopqrstuvwxyz”,s就是一个”...zabcdefghijklmnopqrstuvwxyza...” ...

  3. 在java web项目中编写自己的代码生成器

    在java web项目中编写自己的代码生成器

  4. hibernate 数据关联多对多

    多对多,必须有一张关系表来维持关系 数据库student,teacher student_teacher 三张表 但是在pojo中只需要建立student和teacher两个类,除非关系表也代表某种业 ...

  5. excel2003, 2007最大行列、sheet数

    1.excel2003版本一个工作表最多可有65536行,行用数字1—65536表示;     256列,列用英文字母A—Z,AA—AZ,BA—BZ,……,IA—IV表示.2.一个工作簿中最多含有25 ...

  6. Qt 按顺序保存多个文件

    void MainWindow::on_pushButtonSnap_clicked() { ]; sprintf(image_name, "%s%d%s", "C:/i ...

  7. java不定参数列表---乔老师没讲,但是传智有讲

    **public static void sum(int i,int...srgs){** package com.xml; public class dremo1 { public static v ...

  8. Stream接口

    数据读写可以看作是事件模式(Event)的特例,不断发送的数据块好比一个个的事件.读数据是read事件,写数据是write事件,而数据块是事件附带的信息.Node 为这类情况提供了一个特殊接口Stre ...

  9. 关于android上dpi/screen-size的厘清解释

    android定义了四种screen-size: small normal large xlarge 同时定义了六种dpi级别: ldpi (low) ~120dpimdpi (medium) ~16 ...

  10. ASE分析

    1.Prepare necessary input files(可以参考上次的博客http://www.cnblogs.com/renping/p/7391028.html) 1)对fq1和fq2合并 ...