当前位置: 首页 > 知识库问答 >
问题:

如何在Jmeter中将响应从一个beanshell采样器传递到同一线程中的另一个beanshell采样器

穆锋
2023-03-14

我正在从beanshell对api进行dme2调用,并且从它得到了类似{“StagedCustomerID”:“165CE369-A9FB-4D42-B8F0-F119A6AE20EB”}的响应,所以现在我只想将customer id值传递给另一个beanshell采样器,用于下一个api调用,作为JMeter中同一线程中请求体中的一个参数。

请建议在这种情况下我们能做些什么。有什么方法可以做beanshell后处理吗?

共有1个答案

田硕
2023-03-14

>

  • 您可以使用SampleResult速记来定义Beanshell采样器响应数据,如:

    SampleResult.setResponseData("{\"stagedcustomerId\":\"165ce369-a9fb-4d42-b8f0-f119a6ae20eb\"}","UTF-8")
    

    完成后,您可以添加一个JSON提取器作为Beanshell采样器的子级,并对其进行如下配置:

    就是这样,现在您可以在其他Beanshell采样器中以字符串id=vars.get(“id”);的形式访问提取的值,或者在任何其他测试元素中以${id}的形式访问提取的值。

    还要注意,从JMeter3.1开始,强烈建议使用JSR223测试元素和Groovy语言编写脚本,因此请考虑在下次有机会时重构测试。

  •  类似资料:
    • 我已经在中获得了记录数,我只需要知道如何才能获得的数据 提前感谢!

    • 我创建了一个定制的jmeter java采样器,它在循环中向HTTPendpoint发送请求并解析响应。希望多个线程在单个线程组中运行此采样器。 有人建议,我可以在安装线程组中使用beanshell采样器从csv读取,创建hashmap并使用之类的内容将其存储在JMeter属性中。有人能告诉我这是否是一个合理的方法吗?如果是,我如何访问自定义采样器中的特定JMeter属性? 我找到了这个答案:使用

    • 我需要在JMeter中的bean shell采样器中转换上面的java代码。尝试这样做的结果是“在文件中:内联求值:``import java.io.*;import java.text.SimpleDateFormat;import java.util.Arraylis...''在第27行第39列遇到”=“。”错误。编译器似乎无法解析集合类。即使代码包含“import java.util.Arr

    • 但是根据目前的需求,我们需要从mongodb中获取数据,将这些动态值传递给HTTP请求采样器,我的意思是我们需要根据数据库中的动态值构建HTTP请求采样器? 你能不能请谁帮我一下。

    • 嗨,我正在尝试将从一个采样器中提取的值分配给beanshell脚本中的另一个变量。我有下面的beanshell脚本。 jmeter中的文本请求显示beanshell采样器的如下内容 但linkArr变量在调试采样器中显示为空值。 为什么当我期望9PACMISVL6GIQATCO747NQ值被赋给linkArr变量时,却得到一个空值。请建议

    • 现在我有两个api方法要测试 POST索引成员 删除索引成员 问题是indexmember的字段必须是唯一的。 因此,当我运行POST时 但是当我添加更多线程时= 我在考虑让DELETE作为POST的某种子采样器。 因此,POST和DELETE将一起放在一个线程中。 任何建议将不胜感激。