gpt4 book ai didi

jdbc - jmeter jdbc 变量名查询

转载 作者:行者123 更新时间:2023-12-05 00:23:14 27 4
gpt4 key购买 nike

再次为自己是 Jmeter 新手道歉——我对 JDBC 请求有点困惑——我在过去的 3 个小时里浏览了这个网站上的帖子——但我找不到任何相关的东西(除非我我错过了一些东西)。

我的环境:Jmeter v2.11、JDK 7、Oracle 12

这很简单 - 我有一个 JDBC 采样器,我需要设置它以使用 JDBC 预处理器提供的值。

基本上我有一个 JDBCPreProcessor 设置来识别下一个(新)记录的唯一引用(称之为 applicationID)

JDBC 预处理器详细信息

Select Statement --> select max(applicationID)+1 from table;

我有一个 JDBC Sampler 设置,我需要使用“max(applicationID)+1”值(由 JDBC 预处理器确定)

JDBC 采样器详细信息

Select Statement --> select status from table where applicationID = 'max(applicationID)+1'

我不确定如何做到这一点。我已经查看了说明和许多其他 Jmeter JDBC 请求帖子,但恐怕找不到我需要的相关信息。

我确实尝试在 JDBC 预处理器中添加“maxrecordidvar”的“变量名”并设置 JDBC 采样器查询 --> 从表中选择状态,其中 applicationID = maxrecordidvar

但是 - 这(显然)不起作用 - 我收到一个 Oracle 错误'ORA-00904:“MAXRECORDIDVAR”:无效标识符'

再次,如果这是一个愚蠢的问题,非常抱歉,非常感谢任何人可以提供的所有/任何帮助!

最佳答案

我已经用MYSQL模拟了这个概念,但是测试计划是类似的。

  • JDBC 预处理器获取整数
  • 在以下 JDBC 请求中使用该整数

  • 首先,JDBC 预处理器和 JDBC 请求不只是简单地发送到单个变量,而是根据您的名称公开一些变量。例如
  • 查询:选择 CAST(RAND() * 242 AS UNSIGNED);
  • 变量名:foo

  • 这意味着以后我可以访问
  • ${foo_#} - 行数(应该是 1)
  • ${foo_1} - 第一列第 1 行的值

  • 此查询只有一列和一行,否则 ${foo_2} 将是第一列第 2 行。更多文档位于 JDBC Request

    enter image description here

    其次,要在我的 JDBC 请求中使用,我必须使用准备好的选择语句。传入 ${foo_1} 作为参数值和 INTEGER 作为参数类型(我使用的是 mysql)。

    enter image description here

    我贴了一个模拟 load test and JMX File .

    关于jdbc - jmeter jdbc 变量名查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28544330/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com