无法使用Beanshell脚本对DB进行HTTPS调用以写入数据

时间:2017-05-23 04:58:29

标签: java jmeter beanshell

  1. 我尝试将数据发布到来自post man和JMeter HTTP Sampler的涌入数据库,我能够成功发布数据。
  2. 当我尝试在BeanShell脚本的帮助下通过'JSR223 Listener'模仿相同的调用时,我收到如下错误,
  3.   

    avax.script.ScriptException:源文件:eval stream:类型化变量声明:方法调用httpClient.execute:at Line:20:in file:eval stream:httpClient .execute(httpPost)

         

    从方法调用:write:at Line:54:in file:eval stream:write(queryString)   目标异常:java.net.ConnectException:连接超时:连接    在第20行的eval流中

    任何人都可以建议我为什么会导致错误,应该在开发的脚本中进行任何修改还是丢失任何导入?

1 个答案:

答案 0 :(得分:0)

查看Connection timed out消息,你的代码工作得更不好,它只是无法与目标服务器建立连接,很难说没有看到它(盲目的:你是否通过公司运行测试代理?如果是,您的代码将不会尊重JMeter代理设置,您将需要执行单独的配置)

与此同时提出了几条建议:

  1. 切换到Groovy language
  2. 勾选Cache compiled script if available

    Groovy listener configuration

  3. Groovy是比Beanshell更好的脚本选择,因为它能够将脚本编译成字节码,而Beanshell解释器每次调用时都会对其进行评估,因此Groovy的执行速度会快得多(假设代码相同)。除了Groovy有更好的Java支持并在顶部提供一些额外的功能。有关详细信息,请参阅Groovy is the New Black文章。