记一次jmeter从txt文本获取数值并给测试计划的变量赋值,jmeter永久性修改变量。
2024-10-19 05:34:15
前言:
需要永久性的改变变量。
其实这个办法并不是最好的,但是是最容易实现的。后期可做成从数据库里直接取值。
赋值BeanShell
import java.io.File;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.List; private String stringLine=""; public static int getPrice(int k)
{
// /* 读入TXT文件 */
String pathname = "D:\\\\Java\\\\Jmeter\\\\apache-jmeter-5.0\\\\bin\\\\DaiShouFuLuRuYongHu.txt"; // 绝对路径或相对路径都可以,这里是绝对路径
File filename = new File(pathname); // 要读取以上路径的input。txt文件
InputStreamReader reader = new InputStreamReader(new FileInputStream(filename)); // 建立一个输入流对象reader
BufferedReader br = new BufferedReader(reader); // 建立一个对象,它把文件内容转成计算机能读懂的语言
List line = new ArrayList();
List lineint = new ArrayList();
int i=0;
String[] s = br.readLine().split(",");
for(i =0 ; i<s.length; i++){
line.add(s[i]);
}
for (i = 0;i<line.size();i++)
{
//去掉多余的空格
String b = line.get(i).toString().trim();
//转成int并存储
lineint.add(Integer.parseInt(b)+1);
System.out.println(i+"I:"+lineint.get(i));
}
//转成字符串
stringLine = "";
for (i = 0;i<line.size();i++)
{
//转成字符
String b = String.valueOf(lineint.get(i));
//转成String并存储
if(i!=0)
{
stringLine += ",";
}
stringLine+=b;
}
System.out.println(stringLine); return lineint.get(k);
} public static void setTxt()
{
System.out.println("输入中");
File writename = new File("D:\\\\Java\\\\Jmeter\\\\apache-jmeter-5.0\\\\bin\\\\DaiShouFuLuRuYongHu.txt");// 相对路径,如果没有则要建立一个新的output。txt文件
//writename.createNewFile(); // 创建新文件
BufferedWriter out = new BufferedWriter(new FileWriter(writename));
System.out.println("输入中");
out.write(stringLine); // \r\n即为换行
out.flush(); // 把缓存区内容压入文件
out.close(); // 最后记得关闭文件
} //vars.get("${merchantName}");
int cc = getPrice(0);
String aa = vars.get("merchantName");
aa+=cc;
vars.put("merchantName",aa); int dd = getPrice(1);
String ddd = "";
ddd+=dd;
vars.put("SPid",ddd); System.out.println(stringLine);
setTxt();
System.out.println("写入文件成功");
最新文章
- Linux中exit与_exit的区别
- Unity3D外包团队——技术分享U3D全景漫游(三)
- WCF入门(11)
- codeforces 479B Towers 解题报告
- Android.mk 文件语法详解 转:http://blog.sina.com.cn/s/blog_602f8770010148ce.html
- You don&#39;t have permission to access / on this server
- 函数mem_pool_fill_free_list
- 设计模式(七)组合模式Composite(结构型)
- Three.js使用局部纹理更新
- Mybatis篇总结
- python读取文本文件数据
- net core体系-web应用程序-4net core2.0大白话带你入门-11asp.net core 2.0 cookie的使用
- (转)java创建对象的步骤
- Linux 下载安装配置Redis完整步骤
- JavaScript函数注意点
- 针对于网络安全领域中基于PCAP流量的数据集
- tar 命令显示进度条
- [转载]浅析为什么char类型的范围是 —128~+127
- 【BZOJ】1079: [SCOI2008]着色方案(dp+特殊的技巧)
- ZPL语言说明文档