JMeter项目实战笔记一_接口性能测试

装备质检接口性能测试
接口功能:输入一张闪送员照片,输出图片中的闪送员是否合格
接口说明:

curl -i -k "http://ip:port/check_image"  -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" --data-urlencode "b64=`base64 【图片目录】/0.jpg`"


请求参数

响应结果:

 

1、准备环境和数据
闪送员上传的照片大小对性能有影响,所以准备了四组不同大小的照片。照片来自人工审核图库,且分别挑选审核通过和不通过的照片,比例1:1
照片从图库copy来是这样子的,所以首先想批量命名一下照片

shell脚本如下:

i=1
for var in *.jpg;
	do mv "$var" "${i}.jpg"; i=$(($i+1));done

for var in *.JPEG;
	do mv "$var" "${i}.jpg";i=$(($i+1)); done

命名完之后是

然后是将图片转换成base64的格式,并对参数进行URL转码,保存在文件中,一张图片对应一个文件

写了一段java代码

import sun.misc.BASE64Encoder;

import java.io.*;

public class CheckImage
{


    public static String getImageStr(String imgFile) {
        InputStream inputStream = null;
        byte[] data = null;
        try {
            inputStream = new FileInputStream(imgFile);
            data = new byte[inputStream.available()];
            inputStream.read(data);
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // 加密
        BASE64Encoder encoder = new BASE64Encoder();
        return encoder.encode(data);
    }

    public static void main(String[] args) {
        for(int i =1;i<=30;i++){
            String strImg = getImageStr("/Users/yiqin/Documents/基础服务/闪送员装备智能质检/300k/"+i+".jpg");
            //System.out.println(strImg);
            String result = java.net.URLEncoder.encode(strImg);
            try {
                PrintWriter pw = new PrintWriter(new File("/Users/yiqin/Documents/基础服务/闪送员装备智能质检/300k/data300k/"+i+".txt"));
                pw.println("b64="+result);
                pw.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
    

}

转码后的文件 

 

2、测试脚本

用一个random函数随机取文件

上面的步骤看起来有点复杂,可以改进成:写一个通用的类,传入照片路径和保存转码后文件保存路径,自动获取目录下图片的个数,通过转码命名后保存。将类打包成jar,通过JMeter调用。

 

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值