jmeter修改excel文件内容

最近在准备性能测试,有个接口要上传一些信息,其中包括手机号。但手机号又不能重复,所以就想用在运行时实时修改手机号。于是就写了个方法去做。

这里其实要修改两列,就偷了个懒,后8位用一样的,一起修改掉了。

代码比较简单:

package Yq;

import jxl.*;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.*;
import java.io.File;    
import java.util.Random;

public class UpdateExcel {

     public void update_Exc(String filepath) {
           //File f=new File("D:\\work\\Resources\\demos\\insuranceDemo.xls");
            File f=new File(filepath);
            try {
            Workbook wb = Workbook.getWorkbook(f);//
            WritableWorkbook book = wb.createWorkbook(f, wb);

            // Sheet sheet = wb.getSheet(0); // 获得第一个工作表对象
            WritableSheet st = book.getSheet(0);
            for (int i = 2; i < st.getRows(); i++) {

                StringBuilder str1=new StringBuilder();
                for(int num=0; num<8; num++)
                {
                    if(num==0)
                        str1.append(new Random().nextInt(9)+1);
                    else
                        str1.append(new Random().nextInt(10));
                }
                //修改第三列数据
                Cell cel = st.getCell(2,i);
                if(cel.getType() == CellType.LABEL){
                    Label label = new Label(2, i, str1.toString());
                    st.addCell(label);
                }
                
                //修改第六列数据
                Cell cel2=st.getCell(5, i);
                if(cel2.getType() == CellType.LABEL){
                    Label label = new Label(5, i, "199"+str1.toString());
                    // 将手机号填充单元格内
                    st.addCell(label);
                }
                
            }
            book.write();
            book.close();
            wb.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

}
其中jxl.jar为第三方jar包,需要下载。下载后引用到工程中即可。

将工程导出jar包,添加到jmeter中

在jmeter中的BeanShell Sampler中调用方法 。在调用过程中可以会遇到一些问题,可以查看上一篇文章,希望有所帮助。https://blog.csdn.net/tianyueWindbg/article/details/113870747

import Yq.UpdateExcel; //工程package名称.类(class)名

UpdateExcel updateExc = new UpdateExcel();
updateExc.update_Exc("D:\\work\\Resources\\demos\\insuranceDemo.xls");

至于jmeter上传文件,可以参考另一篇文章:https://blog.csdn.net/tianyueWindbg/article/details/113774528

猜你喜欢

转载自blog.csdn.net/tianyueWindbg/article/details/113890346
今日推荐