我正在尝试测试一些 API,但首先我需要获取我在测试中使用的每个客户的会话密钥。我有一个包含客户登录信息的CSV文件,并阅读每个线程。
我的JMeter文件中有下面的表单。
会话密钥.csv
File file = new File("C:/user/sessionKeys.csv");
if (file.exists() && file.isFile()) {
file.delete();
}
if("${sessionKey}" != "not_found")
{
File file = new File("C:/user/sessionKeys.csv");
FileWriter fWriter = new FileWriter(file, true);
BufferedWriter buff = new BufferedWriter(fWriter);
buff.write("${sessionKey}\n");
buff.close();
fWriter.close();
}
线程计数 = 线程计数,循环 = html" target="_blank">循环
我注意到,即使文件实际上被删除、创建并填充了新的sessionKeys,在文件被删除之前,首先会有一些请求使用文件中的旧sessionKeys。
我尝试过添加常量计时器或更改JMeter文件的结构,但没有任何效果。
看起来测试计划中的 CSV Config 元素存在于线程组之外,因此在删除和重新创建文件之前将首先调用该元素。
在您的情况下,将会话密钥存储为JMeter属性可能更简单,这样就可以在所有线程组中访问它。您可以使用Groovy如< code>props.put("${sessionKey} ",sessionKey)或通过JMeter函数如< code > $ { _ _ set property(" session key ",${sessionKey})}来存储它。
然后,可以使用属性函数(如 ${__P(会话密钥,)}
再次访问该属性。
看看JMeter测试元素的执行顺序
配置元素
预处理器
定时器
采样器
后处理器(除非SampleResult为空)
断言(除非SampleResult为空)
侦听器(除非SampleResult为空)
CSV数据集配置是一个配置元素,因此它在Beanshell采样器之前很久就执行了,这完美地解释了您面临的行为。
因此,如果您需要对CSV文件进行一些预处理,则需要在setUp Thread Group中进行
还要注意,从JMeter 3.1开始,您应该使用JSR223 Test Elements和Groovy语言进行脚本编写,因此考虑迁移是有意义的。
和用户余额相关的信息,余额单位都是按照 CNY 的「分」作为单位。 接口不给现实数字,而是给出以 CNY 的「分」单位的数字,并在「启动者」中提供了显示转换比例,单位为百分比(%) 钱包信息 钱包信息提供进入钱包页面所需的附加信息记录接口。 在未来开发中,一些信息可能会被移动到「启动者」中。 GET /wallet 响应 Status: 200 OK { "labels":[ // 充值选
我遇到了一个挑战,我必须读取CSV文件并将其读取,直到定义的可变大小限制(BATCH_SIZE)。读取 CSV 中的行数后,将其发送到不同的 AWS API。由于我的CSV文件大小可以是1Gb到2Gb的任何地方,因此我避免使用JSR223 CSV文件读取。我想知道如何使用JMeter和CSV数据集配置来实现它。
问题内容: 安装新的构建机器后,我发现它带有标准C ++库的6.0.10 但是,我们的许多目标计算机仍使用旧版本的libstdc ++,例如: 显然,在最后两个0.0.1中,ABI发生了变化,因为尝试运行程序会导致 我尝试明确安装旧版本的gcc,但没有帮助。升级目标计算机是我无法控制的,因此不是一种选择。使我的构建在具有较旧libstdc ++的计算机上工作的最佳方法是什么? 我在apt-cach
问题内容: 我通过终端更新 sklearn 版本 如果我列出 但是如果我在笔记本上运行 结果是 如何解决和更新Jupyter Notebook中的版本? 问题答案: 要更新Jupyter使用的版本,您需要通过Jupiter界面打开终端 并从这里运行命令 错误是使用系统终端。
当我执行phpInfo时。我的Linux(fedora)上的php脚本 它给出了PHP版本5.5 而当我使用我的Apache服务器(通过浏览器)到达它时,它给了我旧的PHP 5.3版本。 发现Apache正在使用一些库(LoadMoulesphp5_module模块/libphp5.so)-在php.conf.中找到它 有人能帮助如何更改Apache正在使用的版本吗? 或者还有其他方法迫使Apac
问题内容: Cloundfoundry最近将其Java buildpack更新到2.5版(包括Java 8和tomcat 8)。我仍想使用2.4版,因为我的应用尚未升级到Java 8。这样做最简单的方法是什么? 我可以使用 但是如何指定使用版本2.4(https://github.com/cloudfoundry/java- buildpack/releases/tag/v2.4 )?显然,指定标