在我的JMeter脚本中,当我使用HTTP REQUEST保存设备详细信息时,一个唯一的自动递增ID(假设123)存储在数据库中。然后在同一个脚本中,当我在先前保存的设备上添加Incentive时,然后在其中传递唯一ID(123)的HTTP REQUEST。由于该ID是从数据库中提取的,所以我无法得到它。
最初我正在考虑使用一个COUNTER并从一个没有存储在数据库中的高数字开始,但它不起作用,因为它需要在节省设备时生成的相同ID。
我使用HTTP(S)TEST SCRIPT RECORDER创建了我的JMeter脚本。
答案 0 :(得分:0)
要连接到数据库,您需要JDBC Connection Configuration并正确定义数据库连接,然后您需要将JDBC元素添加为JDBC PreProcessor(或Sampler),并添加您对此ID的选择,查询类型: Select Statement
,查询将在oracle DB中为select sequnceName.NEXTVAL from dual
,您可以将序列结果放入Result variable name
,例如mySequence
,稍后在JSR 223元素中使用它:< / p>
columnValue = vars.getObject("mySequence").get(0).get("NEXTVAL");
答案 1 :(得分:0)
因此,您可以提取在&#34;设备详细信息&#34;中生成的ID请求/响应并使用JSR223 Post处理器将其保存在外部.csv文件中,并将.csv文件用于&#34; Incentive&#34;请求。
通过这种方式,您可以消除数据库调用,并且您的脚本仅针对具有较少周转时间的HTTP请求运行。