Jmeter实现筛数

测试一个接口,在本地数据库查出来很多数据,但是只有一部分数据可用。由于这个接口调用很多其他系统的接口(rpc调用),SQL很多用hibernate封装的,导致想查到具体的SQL非常困难,简单的方法就是对原有数据进行筛选,筛出可用的数据进行参数化。

之前使用loadrunner,筛数直接放在end里面,根据返回结果进行判断,成功的打印在本地即可,jmeter原理大体一样,稍麻烦些。

首先,需要写好一个接口并进行参数化。

然后需要写一个正则表达式,用来判断接口是否成功,后面做判断用。缺省值需要写上,后面判断会用。

 

最后添加一个后置的BeanShell PostProcessor,进行判断。代码如下。基本逻辑是先获取参数化值,然后创建文件,再进行判断,成功的打印到文件里。

import java.io.File; 

import java.io.InputStreamReader; 

import java.io.BufferedReader; 

import java.io.BufferedWriter; 

import java.io.FileInputStream; 

import java.io.FileWriter;

 

 

vars.put("levid","${levid}");

vars.put("classid","${classid}");

vars.put("Stuid","${stuid}");

vars.put("year","${year}");

vars.put("term","${term}");

vars.put("grdid","${grdid}");

vars.put("subjid","${subjid}");

//vars.put("Claid","${getClaId}");

String getlevid = vars.get("levid");

String getclassid = vars.get("classid");

String getStuid = vars.get("Stuid");

String getyear = vars.get("year");

String getterm = vars.get("term");

String getgrdid = vars.get("grdid");

String getsubjid = vars.get("subjid");

String getclaId = vars.get("getClaId");

//if(getclaId == "NOT FOUND"){

//  getStuid = "NOT FOUND";

//  }

//log.info("======================"+getStuid);

log.info("**********************11"+getclaId);

 

 

try {  

            /* 写入Txt文件 */ 

          

            File file = new File("D://stuId.txt"); // 相对路径,如果没有则要建立一个新的output。txt文件 

            if (!file.exists()) {           //创建新文件

                file.createNewFile();

            }

            FileWriter out = new FileWriter(file,true);

            if (!getclaId.equals("NOTFOUND")){

             //  out.write(getStuid+"\r\n");

             out.write(getlevid+ "," +getclassid + "," +getStuid+ "," + getyear + "," +getterm + "," + getgrdid + "," +getsubjid +"\r\n");

              }

            out.flush(); // 把缓存区内容压入文件 

            out.close(); // 最后记得关闭文件

 

        } catch (Exception e) { 

            e.printStackTrace(); 

        }

转载于:https://www.cnblogs.com/huantianxing/p/8491903.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值