jmeter提取测试变量,或者将生成的测试数据写入TXT文档,提取到jmeter脚本外,方便查看:
使用场景:生成的测试账号保存下来,存储在txt文件,方便以后集成到Jenkins后,查看测试数据。
要用到beanshell取样器,结合java的写文件操作,直接上截图:
vars.get("premobile"),是从jmeter获取变量premobile的值
以下是在指定的文件jfilepath,写入手机号和手机号的后6位:
//System.out.println("Hello,world"); public static void writeIdFile(){ String mobile = vars.get("premobile"); // String parentFile = System.getProperty("新增partner.jmx"); // String filePath = parentFile + File.separator + "out.txt"; String filePath = vars.get("jfilepath"); FileWriter wtiter; try{ // true表示追加写入。如需要每次都重新写入,删掉 true即可 writer = new FileWriter(filePath,true); writer.write(mobile+","+vars.get("mobile_back6")); writer.write(" "); writer.flush(); writer.close(); }catch(IOException e){ e.printStackTrace(); } } writeIdFile(); //System.out.println("Hello,ok");
后期需要优化的点:写入的文件,目前是给的绝对路径,需要优化为相对路径。
---------------------------------------
优化如下:
设置jfilepath_txt = ${__P(user.dir,)}${__P(file.separator,)}partner.txt
C:FFFF盘测试软件apache-jmeter-5.4.1apache-jmeter-5.4.1inpartner.txt
# 需要将脚本 和 txt文件放到 jmeter的安装路径的bin目录下
String filePath = vars.get("jfilepath_txt");
System.out.println(filePath);
${__P(user.dir,)}是获取user.dir的路径
C:FFFF盘测试软件apache-jmeter-5.4.1apache-jmeter-5.4.1in
${__P(file.separator,)} 是获取操作系统的分割符
windows系统的分隔符是: